1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 12:02:58 +02:00
llvm-mirror/lib
Shuxin Yang 3ad15929e7 This patch is to fix radar://8426430. It is about llvm support of __builtin_debugtrap()
which is supposed to consistently raise SIGTRAP across all systems. In contrast,
__builtin_trap() behave differently on different systems. e.g. it raises SIGTRAP on ARM, and
SIGILL on X86. The purpose of __builtin_debugtrap() is to consistently provide "trap"
functionality, in the mean time preserve the compatibility with on gcc on __builtin_trap().

  The X86 backend is already able to handle debugtrap(). This patch is to:
  1) make front-end recognize "__builtin_debugtrap()" (emboddied in the one-line change to Clang).
  2) In DAG legalization phase, by default, "debugtrap" will be replaced with "trap", which
     make the __builtin_debugtrap() "available" to all existing ports without the hassle of
     changing their code.
  3) If trap-function is specified (via -trap-func=xyz to llc), both __builtin_debugtrap() and
     __builtin_trap() will be expanded into the function call of the specified trap function.
    This behavior may need change in the future.

  The provided testing-case is to make sure 2) and 3) are working for ARM port, and we
already have a testing case for x86. 

llvm-svn: 166300
2012-10-19 20:11:16 +00:00
..
Analysis SCEVExpander: Don't crash when trying to merge two constant phis. 2012-10-19 16:37:30 +00:00
Archive Mark checkSignature const, and in turn stop casting away const from 2012-09-05 22:09:23 +00:00
AsmParser Move the Attributes::Builder outside of the Attributes class and into its own class named AttrBuilder. No functionality change. 2012-10-15 20:35:56 +00:00
Bitcode Move the Attributes::Builder outside of the Attributes class and into its own class named AttrBuilder. No functionality change. 2012-10-15 20:35:56 +00:00
CodeGen This patch is to fix radar://8426430. It is about llvm support of __builtin_debugtrap() 2012-10-19 20:11:16 +00:00
DebugInfo Use a typedef to reduce some typing and reformat code accordingly. 2012-10-16 23:46:25 +00:00
ExecutionEngine Resubmit the changes to llvm core to update the functions to support different pointer sizes on a per address space basis. 2012-10-15 16:24:29 +00:00
Linker Move the "findUsedStructTypes" functionality outside of the Module class. 2012-08-03 00:30:35 +00:00
MC [ms-inline asm] Add the isParsingInlineAsm() function to the MCAsmTargetParser. 2012-10-19 17:57:49 +00:00
Object Cosmetic changes 2012-10-10 01:45:52 +00:00
Support Support: Don't remove special files on signals. 2012-10-17 16:30:54 +00:00
TableGen tblgen: Compile TableGen without RTTI. 2012-10-10 20:27:18 +00:00
Target This patch is to fix radar://8426430. It is about llvm support of __builtin_debugtrap() 2012-10-19 20:11:16 +00:00
Transforms Indvars: Don't recursively delete instruction during BB iteration. 2012-10-19 17:53:54 +00:00
VMCore Reapply the TargerTransformInfo changes, minus the changes to LSR and Lowerinvoke. 2012-10-18 23:22:48 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile