https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119628
H.J. Lu <hjl.tools at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #61120|0 |1 is obsolete| | --- Comment #12 from H.J. Lu <hjl.tools at gmail dot com> --- Created attachment 61124 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=61124&action=edit An untested patch I got [hjl@gnu-tgl-3 no-callee]$ cat x.c extern void boring(void); extern void (continuation)(void *, void *, void *, void *) __attribute__((preserve_none)); __attribute__((preserve_none)) void entry(void *a, void *b, void *c, void *d) { boring(); continuation(a, b, c, d); } [hjl@gnu-tgl-3 no-callee]$ make x.s /export/build/gnu/tools-build/gcc-gitlab-test-debug/build-x86_64-linux/gcc/xgcc -B/export/build/gnu/tools-build/gcc-gitlab-test-debug/build-x86_64-linux/gcc/ -O2 -mgeneral-regs-only -mtune-ctrl=prologue_using_move,epilogue_using_move -S x.c [hjl@gnu-tgl-3 no-callee]$ cat x.s .file "x.c" .text .p2align 4 .globl entry .type entry, @function entry: .LFB0: .cfi_startproc subq $8, %rsp .cfi_def_cfa_offset 16 call boring addq $8, %rsp .cfi_def_cfa_offset 8 jmp continuation .cfi_endproc .LFE0: .size entry, .-entry .ident "GCC: (GNU) 15.0.1 20250415 (experimental)" .section .note.GNU-stack,"",@progbits [hjl@gnu-tgl-3 no-callee]$