[llvm-commits] [llvm-gcc-4.2] r129125 - in /llvm-gcc-4.2/trunk/gcc/config/arm: arm.h arm.opt
Evan Cheng
evan.cheng at apple.com
Thu Apr 7 23:04:54 PDT 2011
Author: evancheng
Date: Fri Apr 8 01:04:54 2011
New Revision: 129125
URL: http://llvm.org/viewvc/llvm-project?rev=129125&view=rev
Log:
Add -mtrap-function=<name> option which tells arm codegen to emit call to <name> for trap instead of issuing a trap instruction. rdar://9249183.
Modified:
llvm-gcc-4.2/trunk/gcc/config/arm/arm.h
llvm-gcc-4.2/trunk/gcc/config/arm/arm.opt
Modified: llvm-gcc-4.2/trunk/gcc/config/arm/arm.h
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/config/arm/arm.h?rev=129125&r1=129124&r2=129125&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/config/arm/arm.h (original)
+++ llvm-gcc-4.2/trunk/gcc/config/arm/arm.h Fri Apr 8 01:04:54 2011
@@ -3570,7 +3570,13 @@
if (flag_mkernel || flag_apple_kext) { \
argvec.push_back("-arm-long-calls"); \
argvec.push_back("-arm-strict-align"); \
+ } \
+ if (arm_trap_funcname_string) { \
+ char *arg = (char*)alloca(strlen(arm_trap_funcname_string) + 16); \
+ sprintf(arg, "-arm-trap-func=%s", arm_trap_funcname_string); \
+ argvec.push_back(arg); \
}
+
/* Doing struct copy by partial-word loads and stores is not a good idea on ARM. */
#define TARGET_LLVM_MIN_BYTES_COPY_BY_MEMCPY 4
Modified: llvm-gcc-4.2/trunk/gcc/config/arm/arm.opt
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/config/arm/arm.opt?rev=129125&r1=129124&r2=129125&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/config/arm/arm.opt (original)
+++ llvm-gcc-4.2/trunk/gcc/config/arm/arm.opt Fri Apr 8 01:04:54 2011
@@ -185,3 +185,9 @@
Target Report Mask(NEON_VECTORIZE_QUAD)
Use Neon quad-word (rather than double-word) registers for vectorization
; APPLE LOCAL end v7 support. Merge from Codesourcery
+
+; APPLE LOCAL begin 9249183
+mtrap-function=
+Target RejectNegative Joined Var(arm_trap_funcname_string)
+Emit a call to the specified 'trap' function rather than a trap instruction
+; APPLE LOCAL end 9249183
More information about the llvm-commits
mailing list