This patch updates ldm_stm_operation_p to check for loads that if SP is in the regist...
authorGreta Yorsh <greta.yorsh@arm.com>
Mon, 18 Jun 2012 17:06:35 +0000 (18:06 +0100)
committerGreta Yorsh <gretay@gcc.gnu.org>
Mon, 18 Jun 2012 17:06:35 +0000 (18:06 +0100)
commit474038cda92c3ee8c77be7368d9c954bca922579
treee117f2034e4cf63a61ebd6df25b430c8d1647229
parent9ef7adc086571bf7d2d3664dc7cdeaee27fc3a9b
This patch updates ldm_stm_operation_p to check for loads that if SP is in the register list...

This patch updates ldm_stm_operation_p to check for loads that if SP is in
the register list, then the base register is SP. It guarantees that SP is
reset correctly when an LDM instruction is interrupted. Otherwise, we might
end up with a corrupt stack.

gcc/

2012-06-18  Greta Yorsh  <greta.yorsh@arm.com>

* config/arm/arm.c (ldm_stm_operation_p): Require SP
        as base register for loads if SP is in the register list.

From-SVN: r188738
gcc/ChangeLog
gcc/config/arm/arm.c