]> granicus.if.org Git - clang/commitdiff
Add a separate rightShift flag instead of reusing the existing "poly" variable
authorBob Wilson <bob.wilson@apple.com>
Fri, 3 Dec 2010 17:10:22 +0000 (17:10 +0000)
committerBob Wilson <bob.wilson@apple.com>
Fri, 3 Dec 2010 17:10:22 +0000 (17:10 +0000)
to distinguish vsri/vsli.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120806 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/CGBuiltin.cpp

index e6e29929fd74a5a8c3257c898e4dd455ce788a10..d28038c08b737a6f28a1491109d80e0193f2f5ab 100644 (file)
@@ -1172,6 +1172,7 @@ Value *CodeGenFunction::EmitARMBuiltinExpr(unsigned BuiltinID,
   bool quad = type & 0x10;
   bool poly = (type & 0x7) == 5 || (type & 0x7) == 6;
   bool splat = false;
+  bool rightShift = false;
 
   const llvm::VectorType *VTy = GetNeonType(VMContext, type & 0x7, quad);
   const llvm::Type *Ty = VTy;
@@ -1737,10 +1738,10 @@ Value *CodeGenFunction::EmitARMBuiltinExpr(unsigned BuiltinID,
       return Builder.CreateAShr(Ops[0], Ops[1], "vshr_n");
   case ARM::BI__builtin_neon_vsri_n_v:
   case ARM::BI__builtin_neon_vsriq_n_v:
-    poly = true;
+    rightShift = true;
   case ARM::BI__builtin_neon_vsli_n_v:
   case ARM::BI__builtin_neon_vsliq_n_v:
-    Ops[2] = EmitNeonShiftVector(Ops[2], Ty, poly);
+    Ops[2] = EmitNeonShiftVector(Ops[2], Ty, rightShift);
     return EmitNeonCall(CGM.getIntrinsic(Intrinsic::arm_neon_vshiftins, &Ty, 1),
                         Ops, "vsli_n");
   case ARM::BI__builtin_neon_vsra_n_v: