Skip to content
  • Bill Wendling's avatar
    This is the start of the new SjLj EH preparation pass, which will replace the · 354ff9e3
    Bill Wendling authored
    current IR-level pass.
    
    The old SjLj EH pass has some problems, especially with the new EH model. Most
    significantly, it violates some of the new restrictions the new model has. For
    instance, the 'dispatch' table wants to jump to the landing pad, but we cannot
    allow that because only an invoke's unwind edge can jump to a landing pad. This
    requires us to mangle the code something awful. In addition, we need to keep the
    now dead landingpad instructions around instead of CSE'ing them because the
    DWARF emitter uses that information (they are dead because no control flow edge
    will execute them - the control flow edge from an invoke's unwind is superceded
    by the edge coming from the dispatch).
    
    Basically, this pass belongs not at the IR level where SSA is king, but at the
    code-gen level, where we have more flexibility.
    
    llvm-svn: 140646
    354ff9e3
Loading