audk/UefiCpuPkg/Library/CpuPageTableLib
Zhiguang Liu 2e01a5c128 UefiCpuPkg: Fix IA32 build failure in CpuPageTableLib.inf
The definition of IA32_MAP_ATTRIBUTE has 64 bits, and one of the bit
field PageTableBaseAddress is from bit 12 to bit 52. This means if the
compiler treats the 64bits value as two UINT32 value, the field
PageTableBaseAddress spans two UINT32 value. That's why when building in
NOOPT mode in IA32, the below issue is noticed:
	unresolved external symbol __allshl
This patch fix the build failure by seperate field PageTableBaseAddress
into two fields, make sure no field spans two UINT32 value.

Cc: Eric Dong <eric.dong@intel.com>
Reviewed-by: Ray Ni <ray.ni@intel.com>
Cc: Rahul Kumar <rahul1.kumar@intel.com>
Tested-by: Gerd Hoffmann <kraxel@redhat.com>
Acked-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Zhiguang Liu <zhiguang.liu@intel.com>
Signed-off-by: Ray Ni <ray.ni@intel.com>
2023-03-27 08:21:58 +00:00
..
UnitTest UefiCpuPkg/CpuPageTableLib: Modify RandomTest to check IsModified 2023-03-27 08:21:58 +00:00
CpuPageTable.h UefiCpuPkg: Fix IA32 build failure in CpuPageTableLib.inf 2023-03-27 08:21:58 +00:00
CpuPageTableLib.inf UefiCpuPkg: Create CpuPageTableLib for manipulating X86 paging structs 2022-08-09 07:08:05 +00:00
CpuPageTableMap.c UefiCpuPkg: Fix IA32 build failure in CpuPageTableLib.inf 2023-03-27 08:21:58 +00:00
CpuPageTableParse.c UefiCpuPkg/CpuPageTableLib:Support PAE paging for PageTableParse 2022-10-17 08:03:06 +00:00