From 4d5e23f53a68937e3108293a5b408f2790b309e8 Mon Sep 17 00:00:00 2001 From: Yi Kong Date: Mon, 14 Jul 2014 15:20:09 +0000 Subject: ARM: Implement __builtin_arm_nop intrinsic This patch implements __builtin_arm_nop intrinsic for AArch32 and AArch64, which generates hint 0x0, the alias of NOP instruction. This intrinsic is necessary to implement ACLE __nop intrinsic. Differential Revision: http://reviews.llvm.org/D4495 llvm-svn: 212947 --- clang/lib/CodeGen/CGBuiltin.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'clang/lib/CodeGen') diff --git a/clang/lib/CodeGen/CGBuiltin.cpp b/clang/lib/CodeGen/CGBuiltin.cpp index 4fd98bc1fd1..0f1a146c051 100644 --- a/clang/lib/CodeGen/CGBuiltin.cpp +++ b/clang/lib/CodeGen/CGBuiltin.cpp @@ -3040,6 +3040,9 @@ Value *CodeGenFunction::EmitARMBuiltinExpr(unsigned BuiltinID, unsigned HintID = static_cast(-1); switch (BuiltinID) { default: break; + case ARM::BI__builtin_arm_nop: + HintID = 0; + break; case ARM::BI__builtin_arm_yield: case ARM::BI__yield: HintID = 1; @@ -3804,6 +3807,9 @@ Value *CodeGenFunction::EmitAArch64BuiltinExpr(unsigned BuiltinID, unsigned HintID = static_cast(-1); switch (BuiltinID) { default: break; + case AArch64::BI__builtin_arm_nop: + HintID = 0; + break; case AArch64::BI__builtin_arm_yield: HintID = 1; break; -- cgit v1.2.3