If the first block of a fragment is also a landing pad, the landing pad
is not used if an exception is thrown. This is because the landing pad
is at the same start address that the corresponding LSDA describes. In
that case, the offset in the call site records to refer to that landing
pad is zero, and a zero offset is interpreted by the personality
function as "no handler" and ignored.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
bolt/test/runtime/X86/Inputs/lp-fragment-start.fdata | ||
---|---|---|
1 ↗ | (On Diff #453435) | You can merge fdata into the assembly source by leveraging link_fdata script. See e.g. bolt/test/X86/lto-name-match.s |
bolt/test/runtime/X86/Inputs/lp-fragment-start.fdata | ||
---|---|---|
1 ↗ | (On Diff #453435) | I didn't know that, thanks! |