AmrDeveloper wrote:
> > > eh_token = cir.eh.landingpad
> >
> >
> > If i understood correctly cir.eh_token in Itanium will be lowered to a
> > struct `{ %exception_ptr, %type_id }` and for windows will be an opaque ptr
> > 🤔
>
> The token is just an opaque value to establish a use-def chain. When the
> operation is lowered for Itanium, the replacement will be as you describe,
> though I wouldn't necessarily think of it in term of the token become the
> struct. For Windows, the token roughly corresponds to the funclet token,
> meaning it gets lowered to `none` for top-level landing pads. I haven't
> thought through the mechanism we'll need for nested catch handlers, but as I
> mentioned the funclet token will need to be attached to inoke/TryCall
> operations within the catch region.
That make sense, thanks
https://github.com/llvm/llvm-project/pull/172713
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits