http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49468
--- Comment #9 from Kazumoto Kojima <kkojima at gcc dot gnu.org> 2012-02-29
23:18:23 UTC ---
(In reply to comment #8)
Perhaps. Anyway looks fine to me except one minor failure
on sh64-elf:
xsh64-elf-combined/combined/libgcc/libgcc2.c: In function '__powisf2':
xsh64-elf-combined/combined/libgcc/libgcc2.c:1779:1: error: unrecognizable
insn:
(insn 11 10 12 3 (set (reg:DI 170)
(abs:DI (reg:DI 169)))
xsh64-elf-combined/combined/libgcc/libgcc2.c:1770 -1
(nil))
xsh64-elf-combined/combined/libgcc/libgcc2.c:1779:1: internal compiler error:
in extract_insn, at recog.c:2123
The failure went away if restricting new absdi2 expander to TARGET_SH1.
--- gcc/config/sh/sh.md~ 2012-02-29 10:52:16.000000000 +0900
+++ gcc/config/sh/sh.md 2012-02-29 11:07:42.000000000 +0900
@@ -4538,7 +4538,7 @@ label:
[(set (match_operand:DI 0 "arith_reg_dest" "")
(abs:DI (match_operand:DI 1 "arith_reg_operand" "")))
(clobber (reg:SI T_REG))]
- ""
+ "TARGET_SH1"
"")
(define_insn_and_split "*absdi2"