[llvm-commits] [llvm-gcc-4.2] r111613 - /llvm-gcc-4.2/trunk/gcc/config/arm/llvm-arm.cpp
Bob Wilson
bob.wilson at apple.com
Thu Aug 19 21:34:18 PDT 2010
Author: bwilson
Date: Thu Aug 19 23:34:18 2010
New Revision: 111613
URL: http://llvm.org/viewvc/llvm-project?rev=111613&view=rev
Log:
Translate NEON vmovl intrinsics to zero/sign-extend operations.
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=111613&r1=111612&r2=111613&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 Thu Aug 19 23:34:18 2010
@@ -1747,13 +1747,11 @@
case NEON_BUILTIN_vmovl:
if (datatype == neon_datatype_signed)
- intID = Intrinsic::arm_neon_vmovls;
+ Result = Builder.CreateSExt(Ops[0], ResultType);
else if (datatype == neon_datatype_unsigned)
- intID = Intrinsic::arm_neon_vmovlu;
+ Result = Builder.CreateZExt(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_vext: {
More information about the llvm-commits
mailing list