This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/13674] New: ICE in reload_cse_simplify_operands, at postreload.c:378 on PPC64
- From: "lucier at math dot purdue dot edu" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 13 Jan 2004 20:00:17 -0000
- Subject: [Bug target/13674] New: ICE in reload_cse_simplify_operands, at postreload.c:378 on PPC64
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
With this compiler:
[dhcp10:~/programs/gambc40b4] lucier% gcc -v
Reading specs from /pkgs/gcc-3.4/lib/gcc/powerpc-apple-darwin7.2.0/3.4.0/specs
Configured with: ../configure --prefix=/pkgs/gcc-3.4
Thread model: posix
gcc version 3.4.0 20040113 (experimental)
and the following input, you get the following ICE:
[dhcp10:~/programs/gambc40b4] lucier% gcc -I../include -I. -no-cpp-precomp -Wall
-W -Wno-unused -O1 -fno-math-errno -fschedule-insns2 -fno-trapping-math
-fno-strict-aliasing -fomit-frame-pointer -fPIC -fno-common -mcpu=G5 -save-temps
-DHAVE_CONFIG_H -D___PRIMAL -D___LIBRARY -D___GAMBCDIR=\"/usr/local/\" testppc.i
gcc: unrecognized option `-no-cpp-precomp'
testppc.i: In function `___H__23__23_integer_3f_':
testppc.i:69: error: insn does not satisfy its constraints:
(insn 360 307 97 8 (set (reg:DF 0 r0)
(mem:DF (plus:SI (reg/v:SI 30 r30 [orig:125 ___r1 ] [125])
(const_int 3 [0x3])) [0 S8 A64])) 318 {*movdf_hardfloat64} (nil)
(nil))
testppc.i:69: internal compiler error: in reload_cse_simplify_operands, at
postreload.c:378
/* test file */
static int ___lp;
typedef struct ___processor_state_struct {
int r[5];
int pc;
int temp1;
int na;
int handler_wrong_nargs;
} ___processor_state_struct, *___processor_state;
typedef int (*___host) (___processor_state);
typedef struct ___label_struct {
void *host_label;
___host host;
} ___label_struct;
extern int ___isfinite
(double x);
extern double floor(double);
static int
___H__23__23_integer_3f_(___processor_state ___ps)
{
register int ___pc, ___start, ___temp;
register unsigned long long ___temp64;
register int ___r0;
register int ___r1;
double ___F64V1;
double ___F64V2;
static void *___hlbl_tbl[] = {
0,
&&___L0__23__23_integer_3f_,
0};
if (___ps == 0)
return (int) ___hlbl_tbl;
___r0 = ___ps->r[0];
___r1 = ___ps->r[1];
___start = ___lp + ((137) * 4 * 4);
___pc = ___ps->pc;
goto *((___label_struct *) (___pc - 1))->host_label;
___L0__23__23_integer_3f_:
if (___ps->na == 1) {
} else {
___ps->temp1 = ___start + ((137 - 137 + 0) * 4 * 4); {{
___pc = ___ps->handler_wrong_nargs;
goto ___jumpext;
}
}
}
___L__23__23_integer_3f_:
if (((___r1 & ((1 << 2) - 1)) == (0))) {
goto ___L3__23__23_integer_3f_;
}
if (!(((___temp = (___r1)) & ((1 << 2) - 1)) == 1 && ((((*((int *) ((___temp) -
(1))))) & (((1 << 5) - 1) << 3)) == (((30)) << 3)))) {
goto ___L1__23__23_integer_3f_;
}
___F64V1 = (*((double *) ((((void *) ((___r1) - (1))) + 4))));
if (!___isfinite(___F64V1)) {
goto ___L2__23__23_integer_3f_;
}
___F64V1 = (*((double *) ((((void *) ((___r1) - (1))) + 4))));
___F64V2 = floor(___F64V1);
___r1 = (((___F64V1 == ___F64V2)) ? ((((int) (-2)) << 2) + 2) : ((((int) (-1))
<< 2) + 2));
{{
void *___host_label;
___pc = ___r0;
___host_label = ((___label_struct *) (___pc - 1))->host_label;
if (((___label_struct *) (___pc - 1))->host == ___H__23__23_integer_3f_)
goto *___host_label;
goto ___jumpext;
}
}
___L1__23__23_integer_3f_:
if (!((___r1 & ((1 << 2) - 1)) == (1))) {
goto ___L2__23__23_integer_3f_;
}
___r1 = ((((*((int *) ((___r1) - (1)))) & (((1 << 5) - 1) << 3)) >> (3 - 2)));
if ((___r1 == (((int) (31L)) << 2))) {
goto ___L3__23__23_integer_3f_;
}
if ((___r1 == (((int) (2L)) << 2))) {
goto ___L2__23__23_integer_3f_;
}
if (!(___r1 == (((int) (3L)) << 2))) {
goto ___L2__23__23_integer_3f_;
}
___L2__23__23_integer_3f_:
___r1 = (((((int) (-1)) << 2) + 2));
{{
void *___host_label;
___pc = ___r0;
___host_label = ((___label_struct *) (___pc - 1))->host_label;
if (((___label_struct *) (___pc - 1))->host == ___H__23__23_integer_3f_)
goto *___host_label;
goto ___jumpext;
}
}
___L3__23__23_integer_3f_:
___r1 = (((((int) (-2)) << 2) + 2));
{{
void *___host_label;
___pc = ___r0;
___host_label = ((___label_struct *) (___pc - 1))->host_label;
if (((___label_struct *) (___pc - 1))->host == ___H__23__23_integer_3f_)
goto *___host_label;
goto ___jumpext;
}
}
___jumpext:
___ps->pc = ___pc;
___ps->r[1] = ___r1;
return ___pc;
}
--
Summary: ICE in reload_cse_simplify_operands, at postreload.c:378
on PPC64
Product: gcc
Version: 3.4.0
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: lucier at math dot purdue dot edu
CC: gcc-bugs at gcc dot gnu dot org
GCC build triplet: powerpc-apple-darwin7.2.0
GCC host triplet: powerpc-apple-darwin7.2.0
GCC target triplet: powerpc-apple-darwin7.2.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13674
- Follow-Ups:
- [Bug optimization/13674] ICE in reload_cse_simplify_operands, at postreload.c:378 on PPC64
- From: pinskia at gcc dot gnu dot org
- [Bug optimization/13674] ICE in reload_cse_simplify_operands, at postreload.c:378 on PPC64
- From: pinskia at gcc dot gnu dot org
- [Bug optimization/13674] ICE in reload_cse_simplify_operands, at postreload.c:378 on PPC64
- From: lucier at math dot purdue dot edu
- [Bug optimization/13674] ICE in reload_cse_simplify_operands, at postreload.c:378 on PPC64
- From: dhazeghi at yahoo dot com
- [Bug optimization/13674] ICE in reload_cse_simplify_operands, at postreload.c:378 on PPC64
- From: pinskia at gcc dot gnu dot org
- [Bug optimization/13674] ICE in reload_cse_simplify_operands, at postreload.c:378 on PPC64
- From: dhazeghi at yahoo dot com
- [Bug optimization/13674] ICE in reload_cse_simplify_operands, at postreload.c:378 on PPC64
- From: pinskia at gcc dot gnu dot org
- [Bug optimization/13674] ICE in reload_cse_simplify_operands, at postreload.c:378 on PPC64
- From: cvs-commit at gcc dot gnu dot org
- [Bug optimization/13674] ICE in reload_cse_simplify_operands, at postreload.c:378 on PPC64
- From: cvs-commit at gcc dot gnu dot org
- [Bug optimization/13674] ICE in reload_cse_simplify_operands, at postreload.c:378 on PPC64
- From: pinskia at gcc dot gnu dot org
- [Bug optimization/13674] ICE in reload_cse_simplify_operands, at postreload.c:378 on PPC64
- From: cvs-commit at gcc dot gnu dot org