]> granicus.if.org Git - clang/commitdiff
Remove last of the bool shifts for MS VC++, patch by dimitry andric
authorNate Begeman <natebegeman@mac.com>
Thu, 17 Jun 2010 02:26:59 +0000 (02:26 +0000)
committerNate Begeman <natebegeman@mac.com>
Thu, 17 Jun 2010 02:26:59 +0000 (02:26 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106206 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/CGBuiltin.cpp
lib/Sema/SemaChecking.cpp

index db616c51e237b4fe2d3fdd0173316dc95db57b32..b9ee9020024e9461909aff8f337a171e56dc71cd 100644 (file)
@@ -952,13 +952,13 @@ const llvm::Type *GetNeonType(LLVMContext &Ctx, unsigned type, bool q) {
   switch (type) {
     default: break;
     case 0: 
-    case 5: return llvm::VectorType::get(llvm::Type::getInt8Ty(Ctx), 8 << q);
+    case 5: return llvm::VectorType::get(llvm::Type::getInt8Ty(Ctx), 8 << (int)q);
     case 6:
     case 7:
-    case 1: return llvm::VectorType::get(llvm::Type::getInt16Ty(Ctx), 4 << q);
-    case 2: return llvm::VectorType::get(llvm::Type::getInt32Ty(Ctx), 2 << q);
-    case 3: return llvm::VectorType::get(llvm::Type::getInt64Ty(Ctx), 1 << q);
-    case 4: return llvm::VectorType::get(llvm::Type::getFloatTy(Ctx), 2 << q);
+    case 1: return llvm::VectorType::get(llvm::Type::getInt16Ty(Ctx), 4 << (int)q);
+    case 2: return llvm::VectorType::get(llvm::Type::getInt32Ty(Ctx), 2 << (int)q);
+    case 3: return llvm::VectorType::get(llvm::Type::getInt64Ty(Ctx), 1 << (int)q);
+    case 4: return llvm::VectorType::get(llvm::Type::getFloatTy(Ctx), 2 << (int)q);
   };
   return 0;
 }
index 6f5d6f8ecaf346888fe1d17267391de95e96ff10..3a5afce92021b954833f96389b88f939782abd8f 100644 (file)
@@ -248,25 +248,25 @@ static unsigned RFT(unsigned t, bool shift = false) {
   
   switch (t & 0x7) {
     case 0: // i8
-      return shift ? 7 : (8 << quad) - 1;
+      return shift ? 7 : (8 << (int)quad) - 1;
     case 1: // i16
-      return shift ? 15 : (4 << quad) - 1;
+      return shift ? 15 : (4 << (int)quad) - 1;
     case 2: // i32
-      return shift ? 31 : (2 << quad) - 1;
+      return shift ? 31 : (2 << (int)quad) - 1;
     case 3: // i64
-      return shift ? 63 : (1 << quad) - 1;
+      return shift ? 63 : (1 << (int)quad) - 1;
     case 4: // f32
       assert(!shift && "cannot shift float types!");
-      return (2 << quad) - 1;
+      return (2 << (int)quad) - 1;
     case 5: // poly8
       assert(!shift && "cannot shift polynomial types!");
-      return (8 << quad) - 1;
+      return (8 << (int)quad) - 1;
     case 6: // poly16
       assert(!shift && "cannot shift polynomial types!");
-      return (4 << quad) - 1;
+      return (4 << (int)quad) - 1;
     case 7: // float16
       assert(!shift && "cannot shift float types!");
-      return (4 << quad) - 1;
+      return (4 << (int)quad) - 1;
   }
   return 0;
 }