[llvm-commits] [llvm-gcc-4.2] r112506 - /llvm-gcc-4.2/trunk/gcc/config/arm/llvm-arm.cpp
Bob Wilson
bob.wilson at apple.com
Mon Aug 30 13:01:06 PDT 2010
Author: bwilson
Date: Mon Aug 30 15:01:06 2010
New Revision: 112506
URL: http://llvm.org/viewvc/llvm-project?rev=112506&view=rev
Log:
Translate NEON vmovn builtin to a vector truncation instead of using an llvm
intrinsic.
Modified:
llvm-gcc-4.2/trunk/gcc/config/arm/llvm-arm.cpp
Modified: llvm-gcc-4.2/trunk/gcc/config/arm/llvm-arm.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/config/arm/llvm-arm.cpp?rev=112506&r1=112505&r2=112506&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/config/arm/llvm-arm.cpp (original)
+++ llvm-gcc-4.2/trunk/gcc/config/arm/llvm-arm.cpp Mon Aug 30 15:01:06 2010
@@ -1718,11 +1718,9 @@
case NEON_BUILTIN_vmovn:
if (datatype == neon_datatype_signed ||
datatype == neon_datatype_unsigned)
- intID = Intrinsic::arm_neon_vmovn;
+ Result = Builder.CreateTrunc(Ops[0], ResultType);
else
return BadImmediateError(exp, Result);
- intFn = Intrinsic::getDeclaration(TheModule, intID, &ResultType, 1);
- Result = Builder.CreateCall(intFn, Ops[0]);
break;
case NEON_BUILTIN_vqmovn:
More information about the llvm-commits
mailing list