IntelSiliconPkg: Fix VS2015 NOOPT IA32 build failure in IntelVTdDxe
authorStar Zeng <star.zeng@intel.com>
Thu, 10 Aug 2017 05:11:14 +0000 (13:11 +0800)
committerStar Zeng <star.zeng@intel.com>
Fri, 11 Aug 2017 01:30:19 +0000 (09:30 +0800)
commit76c6f69ccadc7835c9616b077d9ff1b8e46fe49e
tree16846ba8f06dc7d4c2dbf58b08fbcbc25d4e76e0
parent9169c6e81854c7479fcc99ce91704f3f3947e28f
IntelSiliconPkg: Fix VS2015 NOOPT IA32 build failure in IntelVTdDxe

There are VS2015 NOOPT IA32 build failure like below in IntelVTdDxe.
XXX.lib(XXX.obj) : error LNK2001: unresolved external symbol __allshl
XXX.lib(XXX.obj) : error LNK2001: unresolved external symbol __aullshr

This patch is to update Vtd.h to use UINT32 instead of UINT64 for
bitfields in structure definition, and also update IntelVTdDxe code
accordingly.

Cc: Jiewen Yao <jiewen.yao@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
IntelSiliconPkg/Include/IndustryStandard/Vtd.h
IntelSiliconPkg/IntelVTdDxe/DmaProtection.h
IntelSiliconPkg/IntelVTdDxe/PciInfo.c
IntelSiliconPkg/IntelVTdDxe/TranslationTable.c
IntelSiliconPkg/IntelVTdDxe/TranslationTableEx.c
IntelSiliconPkg/IntelVTdDxe/VtdReg.c