[Bug rtl-optimization/82778] New: crash: insn does not satisfy its constraints
babokin at gmail dot com
gcc-bugzilla@gcc.gnu.org
Tue Oct 31 05:12:00 GMT 2017
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82778
Bug ID: 82778
Summary: crash: insn does not satisfy its constraints
Product: gcc
Version: 8.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: rtl-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: babokin at gmail dot com
Target Milestone: ---
gcc trunk rev254211, x86_64.
> cat f.cpp
template <typename a, int b> struct c {
typedef a d[b];
static a e(d f, int g) { return f[g]; }
};
template <typename a, int b> struct B {
typedef c<a, b> h;
typename h::d i;
long j;
a at() { return h::e(i, j); }
};
int k, m, r, s, t;
char l, n, q;
short o, p, w;
struct C {
int u;
};
B<C, 4> v;
void x() {
if (((p > (q ? v.at().u : k)) >> l - 226) + !(n ^ r * m))
s = ((-(((p > (q ? v.at().u : k)) >> l - 226) + !(n ^ r * m)) < 0) /
(-(((p > (q ? v.at().u : k)) >> l - 226) + !(n ^ r * m)) ^
-25 & o) &&
p) >>
(0 <= 0
? 0 ||
(-(((p > (q ? v.at().u : k)) >> l - 226) + !(n ^ r * m)) <
0) /
(-(((p > (q ? v.at().u : k)) >> l - 226) +
!(n ^ r * m)) ^
-25 & o)
: 0);
w = (p > (q ? v.at().u : k)) >> l - 226;
t = !(n ^ r * m);
}
> gcc -O2 -c f.cpp
f.cpp: In function ‘void x()’:
f.cpp:34:1: error: insn does not satisfy its constraints:
}
^
(insn 77 75 37 4 (parallel [
(set (reg:CCZ 17 flags)
(compare:CCZ (plus:SI (reg:SI 0 ax [orig:95 _9 ] [95])
(reg:SI 1 dx [orig:102 _16 ] [102]))
(const_int 0 [0])))
(set (reg:SI 2 cx [orig:103 _17 ] [103])
(plus:SI (reg:SI 0 ax [orig:95 _9 ] [95])
(reg:SI 1 dx [orig:102 _16 ] [102])))
]) "f.cpp":19 225 {*addsi_2}
(expr_list:REG_UNUSED (reg:SI 2 cx [orig:103 _17 ] [103])
(nil)))
during RTL pass: cprop_hardreg
f.cpp:34:1: internal compiler error: in extract_constrain_insn, at recog.c:2207
0x61c877 _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
../../gcc/gcc/rtl-error.c:108
0x61c89d _fatal_insn_not_found(rtx_def const*, char const*, int, char const*)
../../gcc/gcc/rtl-error.c:118
0xdf60bd extract_constrain_insn(rtx_insn*)
../../gcc/gcc/recog.c:2207
0xdff55f copyprop_hardreg_forward_1
../../gcc/gcc/regcprop.c:790
0xe001df execute
../../gcc/gcc/regcprop.c:1296
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.
More information about the Gcc-bugs
mailing list