[LLVMdev] Alternative exception handling proposal

Devang Patel dpatel at apple.com
Thu Dec 2 15:58:35 PST 2010


On Dec 2, 2010, at 2:21 AM, Duncan Sands wrote:

>>> I hate the way dwarf typeinfos, catches and filters are being baked into the
>>> IR. Maybe metadata (see above) helps with this.

	@llvm.eh.catch.all.value = linkonce constant i8* null, section "llvm.metadata"

is not llvm::MDNode or llvm::MDString. @llvm.eh.catch.all.value is just another llvm::Constant.

>> 
>> Metadata cannot be counted on to remain.
> 
> Is that also true for global metadata used as an argument to an intrinsic?

Metadata is used to hold some other data. You can not rely that data being held by metadata remains.
-
Devang

> Do you have an idea for how to keep catches etc out of the definition of the
> IR?  I'm worried that if one day we add support for, say, SEH then we will
> have to change how the IR is defined again, and that's better avoided.






More information about the llvm-dev mailing list