[LLVMdev] llvm-gcc's sjlj-eh support

zhengjian zhang zhangzhengjian at gmail.com
Thu May 7 00:19:35 PDT 2009

    many people suggest that if we  want  llvm to support sjlj-eh, we
should modify the llvm-gcc to generate sjlj-style IR.
yeah, I'm digging into the llvm-gcc now.  there are  some functions,
at the llvm-gcc
TreeToLLVM::CreateExceptionValues() ,
BasicBlock *TreeToLLVM::getPostPad(unsigned RegionNo),
void TreeToLLVM::EmitLandingPads(),
void TreeToLLVM::EmitPostPads() ,
void TreeToLLVM::EmitUnwindBlock()

the above functions are relative for llvm-gcc generate the
exception-IR, but for dwarf-style!  so  we should change these above
functions  to generate sjlj-style exception-IR, base on   the
different semantics   between dwarf-eh and sjlj-eh.
my problem is : what 's  different   semantics between dwarf-eh and sjlj-eh ?

best regards

More information about the llvm-dev mailing list