This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/38857] New: [4.4 Regression] ICE in selective scheduler
- From: "sje at cup dot hp dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 15 Jan 2009 19:19:30 -0000
- Subject: [Bug middle-end/38857] New: [4.4 Regression] ICE in selective scheduler
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
With this test case the selective scheduler is hitting a gcc_assert in
sel-sched-ir.c I see this on IA64 Linux or on IA64 HP-UX when in 64 bit mode.
In both cases it happens when compiling with -O3.
x.c: In function 'dv_guess_qnos':
x.c:22: internal compiler error: in sel_move_insn, at sel-sched-ir.c:1395
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
Test case:
static const int vs_total_ac_bits = 2680;
typedef struct EncBlockInfo {
short mb[64];
unsigned char next[64];
} EncBlockInfo;
inline void dv_guess_qnos(EncBlockInfo* blks, int* qnos) {
int size[5];
int j, k, a, prev;
EncBlockInfo* b;
for(a=2; a==2 || vs_total_ac_bits < size[0]; a+=a){
for (j=0; j<6*5; j++, b++) {
for (k= b->next[prev]; k<64; k= b->next[k]) {
if(b->mb[k] < a && b->mb[k] > -a){
b->next[prev] = b->next[k];
}
else{
prev = k;
}
}
}
}
}
--
Summary: [4.4 Regression] ICE in selective scheduler
Product: gcc
Version: 4.4.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: middle-end
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: sje at cup dot hp dot com
GCC target triplet: ia64-*-*
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38857