[cfe-commits] r111612 - /cfe/trunk/lib/CodeGen/CGBuiltin.cpp
Bob Wilson
bob.wilson at apple.com
Thu Aug 19 20:36:08 PDT 2010
Author: bwilson
Date: Thu Aug 19 22:36:08 2010
New Revision: 111612
URL: http://llvm.org/viewvc/llvm-project?rev=111612&view=rev
Log:
Translate NEON vmovl intrinsics to zero/sign-extend operations.
Modified:
cfe/trunk/lib/CodeGen/CGBuiltin.cpp
Modified: cfe/trunk/lib/CodeGen/CGBuiltin.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGBuiltin.cpp?rev=111612&r1=111611&r2=111612&view=diff
==============================================================================
--- cfe/trunk/lib/CodeGen/CGBuiltin.cpp (original)
+++ cfe/trunk/lib/CodeGen/CGBuiltin.cpp Thu Aug 19 22:36:08 2010
@@ -1377,8 +1377,9 @@
Int = usgn ? Intrinsic::arm_neon_vmlslu : Intrinsic::arm_neon_vmlsls;
return EmitNeonCall(CGM.getIntrinsic(Int, &Ty, 1), Ops, "vmlsl", splat);
case ARM::BI__builtin_neon_vmovl_v:
- Int = usgn ? Intrinsic::arm_neon_vmovlu : Intrinsic::arm_neon_vmovls;
- return EmitNeonCall(CGM.getIntrinsic(Int, &Ty, 1), Ops, "vmovl");
+ if (usgn)
+ return Builder.CreateZExt(Ops[0], Ty, "vmovl");
+ return Builder.CreateSExt(Ops[0], Ty, "vmovl");
case ARM::BI__builtin_neon_vmovn_v:
return EmitNeonCall(CGM.getIntrinsic(Intrinsic::arm_neon_vmovn, &Ty, 1),
Ops, "vmovn");
More information about the cfe-commits
mailing list