https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118946
Bug ID: 118946 Summary: Missed optimization: GCC reserves stack space for optimized-out variable Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: rtl-optimization Assignee: unassigned at gcc dot gnu.org Reporter: blubban at gmail dot com Target Milestone: --- void* aaa(); void* bbb() { void* ret = aaa(); char buf[65536*16]; __builtin_memset(buf, 0, 32); __builtin_memcpy(ret, buf, 32); return ret; } -O3 Expected: bbb(): sub rsp, 8 call aaa() pxor xmm0, xmm0 movups XMMWORD PTR [rax], xmm0 movups XMMWORD PTR [rax+16], xmm0 add rsp, 8 ret Actual: bbb(): sub rsp, 1048584 call aaa() pxor xmm0, xmm0 movups XMMWORD PTR [rax], xmm0 movups XMMWORD PTR [rax+16], xmm0 add rsp, 1048584 ret https://godbolt.org/z/aMvY5Pz8M