Libgfortran: Use MapViewOfFileEx instead of MapViewOfFileExNuma in caf_shmem
Libgfortran now uses `MapViewOfFileEx` instead of `MapViewOfFileExNuma` for shared memory, maintaining Windows XP support.
Libgfortran now uses MapViewOfFileEx in caf_shmem instead of MapViewOfFileExNuma when mapping shared memory regions on Windows. This change maintains compatibility with Windows XP, as MapViewOfFileExNuma is only available on Windows Vista and later. Since the code was passing NUMA_NO_PREFERRED_MODE, the behavior is identical, but the older API is used for broader compatibility.
In Details
This commit modifies shared_memory.c in libgfortran's caf/shmem component, replacing MapViewOfFileExNuma with MapViewOfFileEx. The change is specific to Windows and preserves Windows XP support without affecting functionality, as NUMA_NO_PREFERRED_MODE makes the two functions equivalent in behavior.
For Context
This commit modifies the Libgfortran library, which provides runtime support for Fortran programs compiled with GCC. Specifically, it changes how shared memory is handled on Windows operating systems. The change ensures that the library remains compatible with older versions of Windows (like Windows XP) while maintaining the same functionality on newer systems. Shared memory allows different parts of a program, or different programs, to access the same data in memory.