Issue 230120.3: Extend Memory Location Descriptions
Section various, pg various
The changes proposed below introduce the concept of distinct memory storage for each address space supported by a target architecture, and a default address space for the target architecture. Subsequent proposals will make use of this, allowing memory location descriptions to specify address spaces other than the default one.
In Section 126.96.36.199.2, add the following after the first paragraph:
Each of the target architecture specific address spaces has a corresponding memory location storage that denotes the linear addressable memory of that address space. The size of each memory location storage corresponds to the range of the addresses in the corresponding address space.
It is target architecture defined how address space location storage maps to target architecture physical memory. For example, they may be independent memory, or more than one location storage may alias the same physical memory possibly at different offsets and with different interleaving. The mapping may also be dictated by the source language address classes.
A memory location description specifies a memory location storage. The bit offset corresponds to a bit position within a byte of the memory. Bits accessed using a memory location description, access the corresponding target architecture memory starting at the bit position within the byte specified by the bit offset.
A memory location description that has a bit offset that is a multiple of 8 (the byte size) is defined to be a byte address memory location description. It has a memory byte address
Athat is equal to the bit offset divided by 8.
A memory location description that does not have a bit offset that is a multiple of 8 (the byte size) is defined to be a bit field memory location description. It has a bit position
Bequal to the bit offset modulo 8, and a memory byte address
Aequal to the bit offset minus
Bthat is then divided by 8.
The address space
ASof a memory location description is defined to be the address space that corresponds to the memory location storage associated with the memory location description.
A location description that is comprised of one byte address memory location description
SLis defined to be a memory byte address location description. It has a byte address equal to
Aand an address space equal to
ASof the corresponding