From b9225f7f855999df180ac07aff7cb307a85baf5e Mon Sep 17 00:00:00 2001 From: Bob Wilson Date: Mon, 30 Aug 2010 19:57:13 +0000 Subject: [PATCH] Translate NEON vmovn builtin to a vector truncation instead of using an llvm intrinsic. llvm-svn: 112504 --- clang/lib/CodeGen/CGBuiltin.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/clang/lib/CodeGen/CGBuiltin.cpp b/clang/lib/CodeGen/CGBuiltin.cpp index 279b6855f00e..08993c30e8ea 100644 --- a/clang/lib/CodeGen/CGBuiltin.cpp +++ b/clang/lib/CodeGen/CGBuiltin.cpp @@ -1420,8 +1420,7 @@ Value *CodeGenFunction::EmitARMBuiltinExpr(unsigned BuiltinID, 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"); + return Builder.CreateTrunc(Ops[0], Ty, "vmovn"); case ARM::BI__builtin_neon_vmull_lane_v: splat = true; case ARM::BI__builtin_neon_vmull_v: