aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/CBackend
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2008-03-02 08:54:27 +0000
committerChris Lattner <sabre@nondot.org>2008-03-02 08:54:27 +0000
commit709df326641f6713d6016f37aae751de8a75d7f6 (patch)
tree38dc9c7cc11a8365b1a89056ee16291164386c15 /lib/Target/CBackend
parent6a947cbb1000251637b8f0b5632ad9529c8eda4b (diff)
downloadexternal_llvm-709df326641f6713d6016f37aae751de8a75d7f6.zip
external_llvm-709df326641f6713d6016f37aae751de8a75d7f6.tar.gz
external_llvm-709df326641f6713d6016f37aae751de8a75d7f6.tar.bz2
add support for lvsl, fixing PR1481
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47825 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/CBackend')
-rw-r--r--lib/Target/CBackend/CBackend.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/Target/CBackend/CBackend.cpp b/lib/Target/CBackend/CBackend.cpp
index f3f7485..946a283 100644
--- a/lib/Target/CBackend/CBackend.cpp
+++ b/lib/Target/CBackend/CBackend.cpp
@@ -2511,6 +2511,7 @@ void CWriter::lowerIntrinsics(Function &F) {
case Intrinsic::x86_sse_cmp_ps:
case Intrinsic::x86_sse2_cmp_sd:
case Intrinsic::x86_sse2_cmp_pd:
+ case Intrinsic::ppc_altivec_lvsl:
// We directly implement these intrinsics
break;
default:
@@ -2806,6 +2807,14 @@ bool CWriter::visitBuiltinCall(CallInst &I, Intrinsic::ID ID,
writeOperand(I.getOperand(2));
Out << ")";
return true;
+ case Intrinsic::ppc_altivec_lvsl:
+ Out << '(';
+ printType(Out, I.getType());
+ Out << ')';
+ Out << "__builtin_altivec_lvsl(0, (void*)";
+ writeOperand(I.getOperand(1));
+ Out << ")";
+ return true;
}
}