mirror of https://github.com/acidanthera/audk.git
30afd72eaf
For the bitfield access, MSVC apparently uses a right shift of the base type of the bitfield member. In our case, is is cased by IA32_PTE_4K and IA32_PAGE_LEAF_ENTRY_BIG_PAGESIZE and other structures which uses uint64 bitfields and 32-bit x86 doesn't have a 64-bit integer shift (except using MMX or SSE2). With -Od (NOOPT) even for constant counts it puts the data in EDX:EAX, the shift count in cl and calls __aullshr. Signed-off-by: Savva Mitrofanov <savvamtr@gmail.com> |
||
---|---|---|
.. | ||
UnitTest | ||
CpuPageTable.h | ||
CpuPageTableLib.inf | ||
CpuPageTableMap.c | ||
CpuPageTableParse.c |