https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70086
Bug ID: 70086
Summary: [6 Regression] ICE: in extract_constrain_insn_cached,
at recog.c:2202 (insn does not satisfy its
constraints) with -mavx512vl -ffloat-store
Product: gcc
Version: 6.0
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: zsojka at seznam dot cz
Target Milestone: ---
Target: x86_64-pc-linux-gnu
Created attachment 37871
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=37871&action=edit
reduced testcase
Compiler output:
$ gcc -mtune=barcelona -mavx512vl -ffloat-store testcase.c
testcase.c: In function 'foo':
testcase.c:9:1: error: insn does not satisfy its constraints:
}
^
(insn 41 18 42 2 (set (reg:V2DF 53 xmm16 [98])
(vec_concat:V2DF (mem:DF (plus:DI (reg/f:DI 6 bp)
(const_int -24 [0xffffffffffffffe8])) [1 S8 A64])
(vec_select:DF (const_vector:V2DF [
(const_double:DF 0.0 [0x0.0p+0])
(const_double:DF 0.0 [0x0.0p+0])
])
(parallel [
(const_int 1 [0x1])
])))) testcase.c:7 2760 {sse2_loadlpd}
(nil))
testcase.c:9:1: internal compiler error: in extract_constrain_insn_cached, at
recog.c:2202
0xb3e418 _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
/repo/gcc-trunk/gcc/rtl-error.c:108
0xb3e484 _fatal_insn_not_found(rtx_def const*, char const*, int, char const*)
/repo/gcc-trunk/gcc/rtl-error.c:119
0xaf4a2a extract_constrain_insn_cached(rtx_insn*)
/repo/gcc-trunk/gcc/recog.c:2202
0x1039337 insn_default_length(rtx_insn*)
/repo/gcc-trunk/gcc/config/i386/i386.md:13576
0x8576ab shorten_branches(rtx_insn*)
/repo/gcc-trunk/gcc/final.c:1184
0x8582bf rest_of_handle_shorten_branches
/repo/gcc-trunk/gcc/final.c:4533
0x8582bf execute
/repo/gcc-trunk/gcc/final.c:4562
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.
$ gcc -v
Using built-in specs.
COLLECT_GCC=/repo/gcc-trunk/binary-latest/bin/gcc
COLLECT_LTO_WRAPPER=/repo/gcc-trunk/binary-trunk-233888-checking-yes-rtl-df-nobootstrap-nographite/bin/../libexec/gcc/x86_64-pc-linux-gnu/6.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /repo/gcc-trunk//configure --enable-languages=c,c++
--enable-checking=yes,rtl,df --disable-bootstrap --without-cloog --without-ppl
--without-isl --disable-libstdcxx-pch
--prefix=/repo/gcc-trunk//binary-trunk-233888-checking-yes-rtl-df-nobootstrap-nographite
Thread model: posix
gcc version 6.0.0 20160302 (experimental) (GCC)
Tested revisions:
trunk r233888 - FAIL
5-branch r233800 - OK