------- Comment #1 from jakub at gcc dot gnu dot org 2010-02-16 15:17 ------- For sp based addresses in the -fno-var-tracking-assignments case we have vt_stack_adjustments that replaces the sp based MEMs with CFA based ones (frame_pointer_rtx resp. arg_pointer_rtx based ones). Unfortunately, add_uses replaces the addresses of the MEMs with VALUEs as they are REG + CONST_INT instead of just REG or MEM, and therefore vt_stack_adjustments does nothing.
Either add_uses should also special case REG + CONST_INT (or perhaps just sp/fp + CONST_INT), or we need to do the replacement from sp (and ideally also fp) afterwards. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43092