summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2009-06-06 08:31:46 +0000
committerEli Friedman <eli.friedman@gmail.com>2009-06-06 08:31:46 +0000
commit6813eb125f2d819548e85685059bdda2ee86b04f (patch)
treee944467e7855a9fe1bb82f0fceb7e9399e10142a /clang/lib/CodeGen
parent4d8d7d3263007bde172154f73c8d43d37b53effc (diff)
downloadbcm5719-llvm-6813eb125f2d819548e85685059bdda2ee86b04f.tar.gz
bcm5719-llvm-6813eb125f2d819548e85685059bdda2ee86b04f.zip
Get rid of a bunch of dead builtins.
llvm-svn: 72996
Diffstat (limited to 'clang/lib/CodeGen')
-rw-r--r--clang/lib/CodeGen/CGBuiltin.cpp199
1 files changed, 0 insertions, 199 deletions
diff --git a/clang/lib/CodeGen/CGBuiltin.cpp b/clang/lib/CodeGen/CGBuiltin.cpp
index d813bbae7f0..8a565985f53 100644
--- a/clang/lib/CodeGen/CGBuiltin.cpp
+++ b/clang/lib/CodeGen/CGBuiltin.cpp
@@ -625,81 +625,6 @@ Value *CodeGenFunction::EmitX86BuiltinExpr(unsigned BuiltinID,
switch (BuiltinID) {
default: return 0;
- case X86::BI__builtin_ia32_mulps:
- return Builder.CreateMul(Ops[0], Ops[1], "mulps");
- case X86::BI__builtin_ia32_mulpd:
- return Builder.CreateMul(Ops[0], Ops[1], "mulpd");
- case X86::BI__builtin_ia32_pand:
- case X86::BI__builtin_ia32_pand128:
- return Builder.CreateAnd(Ops[0], Ops[1], "pand");
- case X86::BI__builtin_ia32_por:
- case X86::BI__builtin_ia32_por128:
- return Builder.CreateOr(Ops[0], Ops[1], "por");
- case X86::BI__builtin_ia32_pxor:
- case X86::BI__builtin_ia32_pxor128:
- return Builder.CreateXor(Ops[0], Ops[1], "pxor");
- case X86::BI__builtin_ia32_pandn:
- case X86::BI__builtin_ia32_pandn128:
- Ops[0] = Builder.CreateNot(Ops[0], "tmp");
- return Builder.CreateAnd(Ops[0], Ops[1], "pandn");
- case X86::BI__builtin_ia32_paddb:
- case X86::BI__builtin_ia32_paddb128:
- case X86::BI__builtin_ia32_paddd:
- case X86::BI__builtin_ia32_paddd128:
- case X86::BI__builtin_ia32_paddq:
- case X86::BI__builtin_ia32_paddq128:
- case X86::BI__builtin_ia32_paddw:
- case X86::BI__builtin_ia32_paddw128:
- case X86::BI__builtin_ia32_addps:
- case X86::BI__builtin_ia32_addpd:
- return Builder.CreateAdd(Ops[0], Ops[1], "add");
- case X86::BI__builtin_ia32_psubb:
- case X86::BI__builtin_ia32_psubb128:
- case X86::BI__builtin_ia32_psubd:
- case X86::BI__builtin_ia32_psubd128:
- case X86::BI__builtin_ia32_psubq:
- case X86::BI__builtin_ia32_psubq128:
- case X86::BI__builtin_ia32_psubw:
- case X86::BI__builtin_ia32_psubw128:
- case X86::BI__builtin_ia32_subps:
- case X86::BI__builtin_ia32_subpd:
- return Builder.CreateSub(Ops[0], Ops[1], "sub");
- case X86::BI__builtin_ia32_divps:
- return Builder.CreateFDiv(Ops[0], Ops[1], "divps");
- case X86::BI__builtin_ia32_divpd:
- return Builder.CreateFDiv(Ops[0], Ops[1], "divpd");
- case X86::BI__builtin_ia32_pmullw:
- case X86::BI__builtin_ia32_pmullw128:
- return Builder.CreateMul(Ops[0], Ops[1], "pmul");
- case X86::BI__builtin_ia32_punpckhbw:
- return EmitShuffleVector(Ops[0], Ops[1], 4, 12, 5, 13, 6, 14, 7, 15,
- "punpckhbw");
- case X86::BI__builtin_ia32_punpckhbw128:
- return EmitShuffleVector(Ops[0], Ops[1], 8, 24, 9, 25, 10, 26, 11, 27,
- 12, 28, 13, 29, 14, 30, 15, 31,
- "punpckhbw");
- case X86::BI__builtin_ia32_punpckhwd:
- return EmitShuffleVector(Ops[0], Ops[1], 2, 6, 3, 7, "punpckhwd");
- case X86::BI__builtin_ia32_punpckhwd128:
- return EmitShuffleVector(Ops[0], Ops[1], 4, 12, 5, 13, 6, 14, 7, 15,
- "punpckhwd");
- case X86::BI__builtin_ia32_punpckhdq:
- return EmitShuffleVector(Ops[0], Ops[1], 1, 3, "punpckhdq");
- case X86::BI__builtin_ia32_punpckhdq128:
- return EmitShuffleVector(Ops[0], Ops[1], 2, 6, 3, 7, "punpckhdq");
- case X86::BI__builtin_ia32_punpckhqdq128:
- return EmitShuffleVector(Ops[0], Ops[1], 1, 3, "punpckhqdq");
- case X86::BI__builtin_ia32_punpcklbw:
- return EmitShuffleVector(Ops[0], Ops[1], 0, 8, 1, 9, 2, 10, 3, 11,
- "punpcklbw");
- case X86::BI__builtin_ia32_punpcklwd:
- return EmitShuffleVector(Ops[0], Ops[1], 0, 4, 1, 5, "punpcklwd");
- case X86::BI__builtin_ia32_punpckldq:
- return EmitShuffleVector(Ops[0], Ops[1], 0, 2, "punpckldq");
- case X86::BI__builtin_ia32_punpckldq128:
- return EmitShuffleVector(Ops[0], Ops[1], 0, 4, 1, 5, "punpckldq");
- case X86::BI__builtin_ia32_punpcklqdq128:
- return EmitShuffleVector(Ops[0], Ops[1], 0, 2, "punpcklqdq");
case X86::BI__builtin_ia32_pslldi128:
case X86::BI__builtin_ia32_psllqi128:
case X86::BI__builtin_ia32_psllwi128:
@@ -807,46 +732,6 @@ Value *CodeGenFunction::EmitX86BuiltinExpr(unsigned BuiltinID,
llvm::Function *F = CGM.getIntrinsic(ID);
return Builder.CreateCall(F, &Ops[0], &Ops[0] + Ops.size(), name);
}
- case X86::BI__builtin_ia32_pshufw: {
- unsigned i = cast<ConstantInt>(Ops[1])->getZExtValue();
- return EmitShuffleVector(Ops[0], Ops[0],
- i & 0x3, (i & 0xc) >> 2,
- (i & 0x30) >> 4, (i & 0xc0) >> 6,
- "pshufw");
- }
- case X86::BI__builtin_ia32_pshuflw: {
- unsigned i = cast<ConstantInt>(Ops[1])->getZExtValue();
- return EmitShuffleVector(Ops[0], Ops[0],
- i & 0x3, (i & 0xc) >> 2,
- (i & 0x30) >> 4, (i & 0xc0) >> 6, 4, 5, 6, 7,
- "pshuflw");
- }
- case X86::BI__builtin_ia32_pshufhw: {
- unsigned i = cast<ConstantInt>(Ops[1])->getZExtValue();
- return EmitShuffleVector(Ops[0], Ops[0], 0, 1, 2, 3,
- 4 + (i & 0x3), 4 + ((i & 0xc) >> 2),
- 4 + ((i & 0x30) >> 4), 4 + ((i & 0xc0) >> 6),
- "pshufhw");
- }
- case X86::BI__builtin_ia32_pshufd: {
- unsigned i = cast<ConstantInt>(Ops[1])->getZExtValue();
- return EmitShuffleVector(Ops[0], Ops[0],
- i & 0x3, (i & 0xc) >> 2,
- (i & 0x30) >> 4, (i & 0xc0) >> 6,
- "pshufd");
- }
- case X86::BI__builtin_ia32_vec_init_v4hi:
- case X86::BI__builtin_ia32_vec_init_v8qi:
- case X86::BI__builtin_ia32_vec_init_v2si:
- return EmitVector(&Ops[0], Ops.size());
- case X86::BI__builtin_ia32_vec_ext_v2si:
- case X86::BI__builtin_ia32_vec_ext_v2di:
- case X86::BI__builtin_ia32_vec_ext_v4sf:
- case X86::BI__builtin_ia32_vec_ext_v4si:
- case X86::BI__builtin_ia32_vec_ext_v8hi:
- case X86::BI__builtin_ia32_vec_ext_v4hi:
- case X86::BI__builtin_ia32_vec_ext_v2df:
- return Builder.CreateExtractElement(Ops[0], Ops[1], "result");
case X86::BI__builtin_ia32_cmpps: {
llvm::Function *F = CGM.getIntrinsic(Intrinsic::x86_sse_cmp_ps);
return Builder.CreateCall(F, &Ops[0], &Ops[0] + Ops.size(), "cmpps");
@@ -879,41 +764,6 @@ Value *CodeGenFunction::EmitX86BuiltinExpr(unsigned BuiltinID,
llvm::Function *F = CGM.getIntrinsic(Intrinsic::x86_sse2_cmp_sd);
return Builder.CreateCall(F, &Ops[0], &Ops[0] + Ops.size(), "cmpsd");
}
- case X86::BI__builtin_ia32_movss:
- return EmitShuffleVector(Ops[0], Ops[1], 4, 1, 2, 3, "movss");
- case X86::BI__builtin_ia32_shufps: {
- unsigned i = cast<ConstantInt>(Ops[2])->getZExtValue();
- return EmitShuffleVector(Ops[0], Ops[1],
- i & 0x3, (i & 0xc) >> 2,
- ((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) >> 1)+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,
- "punpcklbw");
- case X86::BI__builtin_ia32_punpcklwd128:
- return EmitShuffleVector(Ops[0], Ops[1], 0, 8, 1, 9, 2, 10, 3, 11,
- "punpcklwd");
- case X86::BI__builtin_ia32_movlhps:
- return EmitShuffleVector(Ops[0], Ops[1], 0, 1, 4, 5, "movlhps");
- case X86::BI__builtin_ia32_movhlps:
- return EmitShuffleVector(Ops[0], Ops[1], 6, 7, 2, 3, "movhlps");
- case X86::BI__builtin_ia32_unpckhps:
- return EmitShuffleVector(Ops[0], Ops[1], 2, 6, 3, 7, "unpckhps");
- case X86::BI__builtin_ia32_unpcklps:
- return EmitShuffleVector(Ops[0], Ops[1], 0, 4, 1, 5, "unpcklps");
- case X86::BI__builtin_ia32_unpckhpd:
- return EmitShuffleVector(Ops[0], Ops[1], 1, 3, "unpckhpd");
- case X86::BI__builtin_ia32_unpcklpd:
- return EmitShuffleVector(Ops[0], Ops[1], 0, 2, "unpcklpd");
- case X86::BI__builtin_ia32_movsd:
- return EmitShuffleVector(Ops[0], Ops[1], 2, 1, "movsd");
case X86::BI__builtin_ia32_loadlps:
case X86::BI__builtin_ia32_loadhps: {
// FIXME: This should probably be represented as
@@ -977,55 +827,6 @@ Value *CodeGenFunction::EmitX86BuiltinExpr(unsigned BuiltinID,
return Builder.CreateBitCast(Ops[0],
llvm::VectorType::get(llvm::Type::Int32Ty, 4));
}
- case X86::BI__builtin_ia32_vec_set_v4hi:
- case X86::BI__builtin_ia32_vec_set_v8hi:
- return Builder.CreateInsertElement(Ops[0], Ops[1], Ops[2], "pinsrw");
- case X86::BI__builtin_ia32_vec_set_v4si:
- return Builder.CreateInsertElement(Ops[0], Ops[1], Ops[2], "pinsrd");
- case X86::BI__builtin_ia32_vec_set_v2di:
- return Builder.CreateInsertElement(Ops[0], Ops[1], Ops[2], "pinsrq");
- case X86::BI__builtin_ia32_andps:
- case X86::BI__builtin_ia32_andpd:
- case X86::BI__builtin_ia32_andnps:
- case X86::BI__builtin_ia32_andnpd:
- case X86::BI__builtin_ia32_orps:
- case X86::BI__builtin_ia32_orpd:
- case X86::BI__builtin_ia32_xorpd:
- case X86::BI__builtin_ia32_xorps: {
- const llvm::Type *ITy = llvm::VectorType::get(llvm::Type::Int32Ty, 4);
- const llvm::Type *FTy = Ops[0]->getType();
- Ops[0] = Builder.CreateBitCast(Ops[0], ITy, "bitcast");
- Ops[1] = Builder.CreateBitCast(Ops[1], ITy, "bitcast");
- switch (BuiltinID) {
- case X86::BI__builtin_ia32_andps:
- Ops[0] = Builder.CreateAnd(Ops[0], Ops[1], "andps");
- break;
- case X86::BI__builtin_ia32_andpd:
- Ops[0] = Builder.CreateAnd(Ops[0], Ops[1], "andpd");
- break;
- case X86::BI__builtin_ia32_andnps:
- Ops[0] = Builder.CreateNot(Ops[0], "not");
- Ops[0] = Builder.CreateAnd(Ops[0], Ops[1], "andnps");
- break;
- case X86::BI__builtin_ia32_andnpd:
- Ops[0] = Builder.CreateNot(Ops[0], "not");
- Ops[0] = Builder.CreateAnd(Ops[0], Ops[1], "andnpd");
- break;
- case X86::BI__builtin_ia32_orps:
- Ops[0] = Builder.CreateOr(Ops[0], Ops[1], "orps");
- break;
- case X86::BI__builtin_ia32_orpd:
- Ops[0] = Builder.CreateOr(Ops[0], Ops[1], "orpd");
- break;
- case X86::BI__builtin_ia32_xorps:
- Ops[0] = Builder.CreateXor(Ops[0], Ops[1], "xorps");
- break;
- case X86::BI__builtin_ia32_xorpd:
- Ops[0] = Builder.CreateXor(Ops[0], Ops[1], "xorpd");
- break;
- }
- return Builder.CreateBitCast(Ops[0], FTy, "bitcast");
- }
}
}
OpenPOWER on IntegriCloud