http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59896
Bug ID: 59896 Summary: Thumb-1 LRA unable to generate reloads for jump_insn Product: gcc Version: 4.9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: terry.guo at arm dot com Created attachment 31903 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=31903&action=edit A preprocessed test case Use trunk gcc to compile attached case with command "arm-none-eabi-gcc -mthumb -O2 -S dtoa.i", we will get below error: /home/build/work/GCC-4-9-build/src/newlib/newlib/libc/stdlib/dtoa.c: In function '_dtoa_r': /home/build/work/GCC-4-9-build/src/newlib/newlib/libc/stdlib/dtoa.c:862:1: error: unable to generate reloads for: (jump_insn 424 2763 425 32 (parallel [ (set (pc) (if_then_else (ge (plus:SI (reg:SI 491 [ D.6302 ]) (const_int -1 [0xffffffffffffffff])) (const_int 0 [0])) (label_ref:SI 427) (pc))) (set (reg/v:SI 178 [ s2 ]) (plus:SI (reg:SI 491 [ D.6302 ]) (const_int -1 [0xffffffffffffffff]))) (clobber (reg:SI 833)) ]) /home/build/work/GCC-4-9-build/src/newlib/newlib/libc/stdlib/dtoa.c:369 225 {*addsi3_cbranch} (expr_list:REG_UNUSED (reg:SI 833) (expr_list:REG_DEAD (reg:SI 491 [ D.6302 ]) (int_list:REG_BR_PROB 7300 (nil)))) -> 427) /home/build/work/GCC-4-9-build/src/newlib/newlib/libc/stdlib/dtoa.c:862:1: internal compiler error: in curr_insn_transform, at lra-constraints.c:3220 0xaa7a9b _fatal_insn(char const*, rtx_def const*, char const*, int, char const*) /myssd/terguo01/toolchain-build/thumb1-uxtb/src/gcc/gcc/rtl-error.c:109 0x9a9f71 curr_insn_transform /myssd/terguo01/toolchain-build/thumb1-uxtb/src/gcc/gcc/lra-constraints.c:3220 0x9acb2a lra_constraints(bool) /myssd/terguo01/toolchain-build/thumb1-uxtb/src/gcc/gcc/lra-constraints.c:4115 0x999647 lra(_IO_FILE*) /myssd/terguo01/toolchain-build/thumb1-uxtb/src/gcc/gcc/lra.c:2339 0x947791 do_reload /myssd/terguo01/toolchain-build/thumb1-uxtb/src/gcc/gcc/ira.c:5457 0x947ada rest_of_handle_reload /myssd/terguo01/toolchain-build/thumb1-uxtb/src/gcc/gcc/ira.c:5598 0x947b24 execute /myssd/terguo01/toolchain-build/thumb1-uxtb/src/gcc/gcc/ira.c:5627 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions. The gcc version is: gcc version 4.9.0 20140120 (experimental) If we disable LRA, there is no such issue.