]> granicus.if.org Git - clang/commitdiff
Add support shufpd
authorMon P Wang <wangmp@apple.com>
Fri, 18 Jul 2008 00:14:09 +0000 (00:14 +0000)
committerMon P Wang <wangmp@apple.com>
Fri, 18 Jul 2008 00:14:09 +0000 (00:14 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53747 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/CGBuiltin.cpp

index 1693cacdac9ee369c3ea8dcf041333fab49a02c2..fb6b0caa3d0312fe314bfe3d7109218ded9da151 100644 (file)
@@ -767,6 +767,10 @@ Value *CodeGenFunction::EmitX86BuiltinExpr(unsigned BuiltinID,
                              ((i & 0x30) >> 4) + 4, 
                              ((i & 0xc0) >> 6) + 4, "shufps");
   }
+  case X86::BI__builtin_ia32_shufpd: {
+    unsigned i = cast<ConstantInt>(Ops[2])->getZExtValue();
+    return EmitShuffleVector(Ops[0], Ops[1], i & 1, (i & 2) + 2, "shufpd");
+  }
   case X86::BI__builtin_ia32_punpcklbw128:
     return EmitShuffleVector(Ops[0], Ops[1], 0, 16, 1, 17, 2, 18, 3, 19,
                                              4, 20, 5, 21, 6, 22, 7, 23,