]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/testsuite/ChangeLog
[ARM] PR target/70830: Avoid POP-{reglist}^ when returning from interrupt handlers
authorktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 12 May 2016 09:56:46 +0000 (09:56 +0000)
committerktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 12 May 2016 09:56:46 +0000 (09:56 +0000)
commit0f56938bd9293d210ef6a365eadcd122836c3bfd
tree43c42f7af9755f290377e17a4c95ed428514cfc4
parent9fa8e4680c4ffce826ae73b3c5acb13691988ecd
[ARM] PR target/70830: Avoid POP-{reglist}^ when returning from interrupt handlers

PR target/70830
* config/arm/arm.c (arm_output_multireg_pop): Avoid POP instruction
when popping the PC and within an interrupt handler routine.
Add missing tab to output of "ldmfd".
(output_return_instruction): Output LDMFD with SP update rather
than POP when returning from interrupt handler.

* gcc.target/arm/interrupt-1.c: Change dg-compile to dg-assemble.
Add -save-temps to dg-options.
Scan for ldmfd rather than pop instruction.
* gcc.target/arm/interrupt-2.c: Likewise.
* gcc.target/arm/pr70830.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@236169 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/arm/arm.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/arm/interrupt-1.c
gcc/testsuite/gcc.target/arm/interrupt-2.c
gcc/testsuite/gcc.target/arm/pr70830.c [new file with mode: 0644]