[Bug target/80210] ICE in in extract_insn, at recog.c:2311 on ppc64 for with __builtin_pow
bergner at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Sep 27 23:13:00 GMT 2017
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80210
--- Comment #16 from Peter Bergner <bergner at gcc dot gnu.org> ---
While investigating the new failure in Comment 15, I modified the test case
slightly to move the #pragma to the beginning of the test case. I found I get
another similar looking ICE, but which isn't the same as the bug reported in
Comment 15:
bergner@bns:~/gcc/BUGS/PR80210>
/home/bergner/gcc/build/gcc-fsf-mainline-pr80210-64-base/gcc/xgcc
-B/home/bergner/gcc/build/gcc-fsf-mainline-pr80210-64-base/gcc -O2 -S no-sqrt.i
no-sqrt.i: In function ‘foo’:
no-sqrt.i:6:1: error: unrecognizable insn:
}
^
(insn 6 3 7 2 (set (reg:DF 121 [ <retval> ])
(sqrt:DF (reg/v:DF 122 [ a ]))) "no-sqrt.i":5 -1
(nil))
during RTL pass: vregs
no-sqrt.i:6:1: internal compiler error: in extract_insn, at recog.c:2304
0x101330c7 _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
/home/bergner/gcc/gcc-fsf-mainline-pr80210-base/gcc/rtl-error.c:108
0x1013310b _fatal_insn_not_found(rtx_def const*, char const*, int, char const*)
/home/bergner/gcc/gcc-fsf-mainline-pr80210-base/gcc/rtl-error.c:116
0x1085747b extract_insn(rtx_insn*)
/home/bergner/gcc/gcc-fsf-mainline-pr80210-base/gcc/recog.c:2304
0x10555bff instantiate_virtual_regs_in_insn
/home/bergner/gcc/gcc-fsf-mainline-pr80210-base/gcc/function.c:1591
0x10555bff instantiate_virtual_regs
/home/bergner/gcc/gcc-fsf-mainline-pr80210-base/gcc/function.c:1959
0x10555bff execute
/home/bergner/gcc/gcc-fsf-mainline-pr80210-base/gcc/function.c:2008
After debugging this, I have found that this is a problem saving and restoring
the optab values, so basically the opposite problem than we had before.
I have a patch that I am testing that fixes both new problems.
More information about the Gcc-bugs
mailing list