]> git.proxmox.com Git - mirror_edk2.git/commitdiff
BaseTools: Fix Xcode 9 Beta treating 32-bit left shift as undefined
authorYonghong Zhu <yonghong.zhu@intel.com>
Wed, 2 Aug 2017 09:19:02 +0000 (17:19 +0800)
committerYonghong Zhu <yonghong.zhu@intel.com>
Fri, 11 Aug 2017 00:39:41 +0000 (08:39 +0800)
Bug: https://bugzilla.tianocore.org/show_bug.cgi?id=635

Cc: Liming Gao <liming.gao@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Andrew Fish <afish@apple.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
BaseTools/Source/C/Common/Decompress.c
BaseTools/Source/C/TianoCompress/TianoCompress.c

index 4b83e88210e14b89ff4ec704f5b6385dcad7c54b..b2049bd01c5f452149b8fe19f9e33df7309f83a6 100644 (file)
@@ -89,11 +89,11 @@ Returns: (VOID)
 \r
 --*/\r
 {\r
-  Sd->mBitBuf = (UINT32) (Sd->mBitBuf << NumOfBits);\r
+  Sd->mBitBuf = (UINT32) (((UINT64)Sd->mBitBuf) << NumOfBits);\r
 \r
   while (NumOfBits > Sd->mBitCount) {\r
 \r
-    Sd->mBitBuf |= (UINT32) (Sd->mSubBitBuf << (NumOfBits = (UINT16) (NumOfBits - Sd->mBitCount)));\r
+    Sd->mBitBuf |= (UINT32) (((UINT64)Sd->mSubBitBuf) << (NumOfBits = (UINT16) (NumOfBits - Sd->mBitCount)));\r
 \r
     if (Sd->mCompSize > 0) {\r
       //\r
index f810511f5f2f9a57c57bec78b4e9c63a06f9ac50..046fb36a178d44a49bb5a30effda492b2230ae43 100644 (file)
@@ -2066,11 +2066,11 @@ Returns: (VOID)
 \r
 --*/\r
 {\r
-  Sd->mBitBuf = (UINT32) (Sd->mBitBuf << NumOfBits);\r
+  Sd->mBitBuf = (UINT32) (((UINT64)Sd->mBitBuf) << NumOfBits);\r
 \r
   while (NumOfBits > Sd->mBitCount) {\r
 \r
-    Sd->mBitBuf |= (UINT32) (Sd->mSubBitBuf << (NumOfBits = (UINT16) (NumOfBits - Sd->mBitCount)));\r
+    Sd->mBitBuf |= (UINT32) (((UINT64)Sd->mSubBitBuf) << (NumOfBits = (UINT16) (NumOfBits - Sd->mBitCount)));\r
 \r
     if (Sd->mCompSize > 0) {\r
       //\r