------- Comment #11 from sandra at codesourcery dot com 2010-07-10 21:07 ------- I just checked to see if this is still a problem. As of r162042, the example in comment #1 produces the same (bad) output as GCC 4.4.1. However, the example in comment #4 looks fixed to me, with this output:
test: push {r0, r1, r2, lr} mov r3, #0 str r3, [sp, #4] .L2: add r0, sp, #4 bl func ldr r3, [sp, #4] cmp r3, #12 ble .L2 @ sp needed for prologue pop {r0, r1, r2, pc} As it was the latter test case that caused this to be marked as a duplicate of PR 36758, maybe the original test case is tripping over a different problem and needs to be re-examined? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39837