Use int3 trap padding between functions instead of trapsleds with a leading jump. Index: lib/Target/X86/X86AsmPrinter.h --- lib/Target/X86/X86AsmPrinter.h.orig +++ lib/Target/X86/X86AsmPrinter.h @@ -128,6 +128,8 @@ class LLVM_LIBRARY_VISIBILITY X86AsmPrinter : public A void emitInstruction(const MachineInstr *MI) override; + void emitTrapToAlignment(Align Alignment) const override; + void emitBasicBlockEnd(const MachineBasicBlock &MBB) override { AsmPrinter::emitBasicBlockEnd(MBB); SMShadowTracker.emitShadowPadding(*OutStreamer, getSubtargetInfo());