https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103882
Jose Silva <krystalgamer at protonmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|INVALID |WONTFIX --- Comment #13 from Jose Silva <krystalgamer at protonmail dot com> --- At this point I believe you're purposely misinterpreting the problem at hand and justifying it with a bad implementation by waving the terrible GCC documentation. I didn't write anything around the ASM statement because I'm doing a syscall. Even if I wasn't doing a syscall the code posted on the original post is valid according to the ABI. The default behavior for a function composed of a single ASM statement should be the same as if it was compiled separately with the assembler. When writing the assembly code you don't need to tell the assembler/compiler which registers were clobbered because there's an ABI - you follow it? good. else enjoy UB. Clobber information should be *only* for optimization purposes, else the compiler should just stick to the ABI. I'm talking about ~sensible defaults~, IPA shouldn't assume the best case scenario(no clobber) when no information is provided to it, but the worst(spill every caller-saved register in use). You've avoided answering my question twice and the only contribution to the thread has been spamming me with insane amounts of copium regarding the terrible GCC's IPA RA - bad defaults are not a feature. Unless you'd like to help my modifications of GCC with something like giving me the contact of someone that actually knows what they're talking about and has experience with the codebase, refrain from posting.