This is an alternative to D66980, which was reverted. Instead of
inserting a pseudo instruction that optionally expands to nothing, add a
pass that inserts int3 when appropriate after basic block layout.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
Comment Actions
lgtm. I only know about this from what rnk told me about the unwinder not wanting the return address to be outside the function, and this seems like a straight-forward solution to that problem.
llvm/lib/Target/X86/X86.h | ||
---|---|---|
85 ↗ | (On Diff #218810) | Maybe mention briefly that this is in order not to confuse certain unwinders? Otherwise this describes perfectly the "what" but not the "why". |