llvm/lib
Bill Wendling 24fbb5875c Perform the upgrading of the old EH to the new EH in a more sane manner.
Perform the upgrading in steps.

* First, create a map of the invokes to the EH intrinsics.

* Next, take that mapping and determine if the invoke's unwind destination has a
  single predecessor. If not, then create a new empty block to hold the new
  landingpad instruction.

* Create a landingpad instruction into the uwnind destination. Fill it with the
  values from the old selector. Map the old intrinsic calls to the new
  landingpad values (there may be multiple landingpad instructions per instrinic
  call pairs).

* Go through the old intrinsic calls, create a PHI node when necessary, and then
  replace their values with the new values from the landingpad instructions.

* Delete all dead instructions.

* ???

* Profit!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138990 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-02 01:30:08 +00:00
..
Analysis After r138010, subroutine type does not have context info. Update type verifier accordingly. 2011-08-31 18:04:31 +00:00
Archive Rewrite the CMake build to use explicit dependencies between libraries, 2011-07-29 00:14:25 +00:00
AsmParser Auto upgrade the old EH scheme to use the new one. This is on a trial basis. If 2011-08-27 06:11:03 +00:00
Bitcode Don't forget to add the landingpad and resume instructions to the InstructionList. 2011-09-01 00:50:20 +00:00
CodeGen Revert r131152, r129796, r129761. This code is currently considered 2011-09-01 23:07:08 +00:00
CompilerDriver Build CompilerDriver library. 2011-03-12 22:01:42 +00:00
ExecutionEngine Move TargetRegistry and TargetSelect from Target to Support where they belong. 2011-08-24 18:08:43 +00:00
Linker switch to the new struct api. 2011-08-12 18:07:26 +00:00
MC Don't drop alignment info on local common symbols. 2011-09-01 23:04:27 +00:00
Object Teach macho-dump to dump the uleb128s referred to by linkedit_data segments. 2011-08-30 22:10:58 +00:00
Support Add AMDIL as valid target triple to LLVM. 2011-08-29 15:44:55 +00:00
Target Merge the ARM disassembler header into the implementation file, since it is not externally exposed. 2011-09-01 23:35:51 +00:00
Transforms Reduce indentation. No functionality change. 2011-09-01 21:29:49 +00:00
VMCore Perform the upgrading of the old EH to the new EH in a more sane manner. 2011-09-02 01:30:08 +00:00
CMakeLists.txt Build CompilerDriver library. 2011-03-12 22:01:42 +00:00
Makefile