GETMAIN macro

The LOC parameter on the RU, RC, VRU, and VRC forms of the GETMAIN macro specifies not only the virtual storage location of the area to be obtained, but also the central storage location when the storage is page fixed.
Note: There is exception to the meaning of LOC=RES and LOC=(RES,31). A caller residing below 16 megabytes but running with 31-bit addressing can specify LOC=RES (either explicitly or by taking the default) or LOC=(RES,31) to obtain storage from a subpool supported only above 16 megabytes. In this case, the caller's AMODE determines the location of the virtual storage.

LOC is optional except in the following case: A program that resides above 16 megabytes and uses the RU, RC, VRU, and VRC forms of GETMAIN must specify either LOC=24 or LOC=(24,31) on GETMAIN requests for storage that will be used by programs running in 24-bit addressing mode. Otherwise, virtual storage would be assigned above 16 megabytes and 24-bit addressing mode programs could not use it.

The location of virtual storage can also be specified on the PGSER (page services) macro. The ANYWHER parameter on PGSER specifies that a particular virtual storage area can be placed either above or below 16 megabytes on future page-ins. This parameter applies to virtual storage areas where LOC=(24,31) or LOC=(31,31) was not specified on GETMAIN.