[Bug target/82499] New: x86: small stack initial adjustments could use push
benjamin at benjamin dot pe
gcc-bugzilla@gcc.gnu.org
Tue Oct 10 04:39:00 GMT 2017
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82499
Bug ID: 82499
Summary: x86: small stack initial adjustments could use push
Product: gcc
Version: 8.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: benjamin at benjamin dot pe
Target Milestone: ---
consider:
extern void g(void);
int f() {
g();
return 42;
}
For f, gcc -Os on the trunk generates
subq $8, %rsp
call g
movl $42, %eax
popq %rdx
ret
clang 5.0.0 cleverly generates:
pushq %rax
callq g
movl $42, %eax
popq %rcx
retq
"pushq %rax" ends up being 2 bytes shorter than "subq $8, %rsp".
More information about the Gcc-bugs
mailing list