https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70830
--- Comment #6 from ktkachov at gcc dot gnu.org --- Author: ktkachov Date: Thu May 12 12:47:03 2016 New Revision: 236173 URL: https://gcc.gnu.org/viewcvs?rev=236173&root=gcc&view=rev Log: [ARM] PR target/70830: Avoid POP-{reglist}^ when returning from interrupt handlers Backport from mainline 2016-05-12 Kyrylo Tkachov <kyrylo.tkac...@arm.com> 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. Added: branches/gcc-6-branch/gcc/testsuite/gcc.target/arm/pr70830.c Modified: branches/gcc-6-branch/gcc/ChangeLog branches/gcc-6-branch/gcc/config/arm/arm.c branches/gcc-6-branch/gcc/testsuite/ChangeLog branches/gcc-6-branch/gcc/testsuite/gcc.target/arm/interrupt-1.c branches/gcc-6-branch/gcc/testsuite/gcc.target/arm/interrupt-2.c