llvm-6502/lib
Bill Wendling e36b47e17b Revert r176154 in favor of a better approach.
Code generation makes some basic assumptions about the IR it's been given. In
particular, if there is only one 'invoke' in the function, then that invoke
won't be going away. However, with the advent of the `llvm.donothing' intrinsic,
those invokes may go away. If all of them go away, the landing pad no longer has
any users. This confuses the back-end, which asserts.

This happens with SjLj exceptions, because that's the model that modifies the IR
based on there being invokes, etc. in the function.

Remove any invokes of `llvm.donothing' during SjLj EH preparation. This will
give us a CFG that the back-end won't be confused about. If all of the invokes
in a function are removed, then the SjLj EH prepare pass won't insert the bogus
code the relies upon the invokes being there.
<rdar://problem/13228754&13316637>


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176677 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-08 02:21:08 +00:00
..
Analysis Simplify code. No functionality change. 2013-03-07 20:22:39 +00:00
Archive Fix auto_ptr is deprecated warnings 2013-02-26 21:20:35 +00:00
AsmParser Unify clang/llvm attributes for asan/tsan/msan (LLVM part) 2013-02-26 06:58:09 +00:00
Bitcode Simplify code. No functionality change. 2013-02-19 09:48:30 +00:00
CodeGen Revert r176154 in favor of a better approach. 2013-03-08 02:21:08 +00:00
DebugInfo Code cleanup: pass Offset by pointer to parseInstruction to more explicitly 2013-02-22 00:50:48 +00:00
ExecutionEngine Formatting, grammar 2013-02-20 18:24:34 +00:00
IR Replace temporary vectors with arrays. 2013-03-07 20:53:34 +00:00
Linker
MC Debug Info: store the files and directories for each compile unit. 2013-03-07 01:42:00 +00:00
Object Move an assert earlier in a file and check that the result of 2013-02-28 20:26:17 +00:00
Option
Support In llvm::MemoryBuffer::getFile() remove an unnecessary stat call check. 2013-03-01 22:48:51 +00:00
TableGen [TableGen] Fix ICE on MSVC 2012 Release builds. 2013-02-26 21:29:47 +00:00
Target ArrayRefize some code. No functionality change. 2013-03-07 20:33:29 +00:00
Transforms Keep coding stanard. 2013-03-07 22:20:06 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile