------- Comment #1 from rth at gcc dot gnu dot org 2005-10-18 09:48 ------- So, when was your last update? AFAIK this was fixed 3 days ago. I've just now tested again on amd64-linux and see
MAIN__: .LFB2: movl $equiv.0.898, %eax movl $equiv.0.898+33554432, %edx .L2: movl $5, 36(%rax) addq $4, %rax cmpq %rdx, %rax jne .L2 movl $0, %edx .L4: movl equiv.0.898+36(,%rdx,4), %eax movl %eax, k.901(,%rdx,4) incq %rdx cmpq $8388608, %rdx jne .L4 ret No stack allocation at all. No references to I or J, only equiv.0.898. The data segment contains .local k.901 .comm k.901,33554432,32 .local equiv.0.898 .comm equiv.0.898,33554468,32 which looks correct as well. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24424