This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/25005] [4.1/4.2 regression] ICE in extract_constrain_insn_cached, at recog.c:2002
- From: "bangerth at dealii dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 23 Nov 2005 17:12:26 -0000
- Subject: [Bug target/25005] [4.1/4.2 regression] ICE in extract_constrain_insn_cached, at recog.c:2002
- References: <bug-25005-102@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #3 from bangerth at dealii dot org 2005-11-23 17:12 -------
Here's a much shorter testcase:
---------------------
#include <vector>
struct Point {
Point (const Point &);
Point (const double x);
double values[3];
};
Point::Point (const double x) {
this->values[0] = x;
}
Point::Point (const Point &p) {
for (unsigned int i=0; i<3; ++i) values[i] = p.values[i];
}
struct X {
void bar (const std::vector<Point> &vertices);
};
void foo (X &x) {
const Point vertices[2] = { Point(1), Point(1), };
x.bar (std::vector<Point>(&vertices[0], &vertices[2]));
}
----------------------
deal.II/deal.II> c++ -c -O3 -funroll-loops x.cc
x.cc: In function 'void foo(X&)':
x.cc:25: error: insn does not satisfy its constraints:
(insn 556 554 555 (set (reg:DI 1 dx [orig:153 D.13205 ] [153])
(mult:DI (reg:DI 7 sp [118])
(const_int 2 [0x2]))) 196 {*lea_2_rex64} (nil)
(nil))
x.cc:25: internal compiler error: in extract_constrain_insn_cached, at
recog.c:2002
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
W.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25005