[LLVMdev] RFC: New Exception Handling Proposal

Duncan Sands baldrick at free.fr
Tue Nov 24 05:56:07 PST 2009


>>> And it would be up to codegen to "peel it out into its own basic block"?
>> Not sure what that means?
> 
> I was trying to work out what Bill meant by this:
> 
>> The only other problem I can see is if code branches into a catch block. It's gross, but could happen. In that case, the llvm.eh.exception should *not* be executed, because it's metadata constructed by the compiler, not user code. It would have to be peeled out into its own basic block in such instances.
> 
> What exactly would be "peeled out into its own basic block", by whom,
> at what stage of the compilation process?

I think he is saying: "what happens if the unwind label for an invoke is a
basic block which is also jumped to by ordinary code, not just by invokes?"
The answer is that this is all already taken care of and you get the correct
value.

Ciao,

Duncan.



More information about the llvm-dev mailing list