This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Problem with your 1999-11-23 change
- To: Bernd Schmidt <bernds at darkstar dot frop dot org>
- Subject: Problem with your 1999-11-23 change
- From: Mark Mitchell <mark at codesourcery dot com>
- Date: Mon, 13 Dec 1999 01:52:53 -0800
- Cc: gcc-bugs at gcc dot gnu dot org
- Organization: CodeSourcery, LLC
Bernd --
This change:
1999-11-23 Bernd Schmidt <bernds@cygnus.co.uk>
* loop.c: Include "basic-block.h".
(try_copy_prop, replace_loop_reg): New functions.
(load_mems): Detect registers that just hold copies of the hoisted
mem, and call try_copy_prop to eliminate them.
* Makefile.in (loop.o): Update dependencies.
is causing the attached C++ test-case to crash with -O on
x86-pc-linux-gnu. In try_copy_prop, we're crashing here:
if (REGNO_FIRST_UID (regno) == INSN_UID (insn))
store_is_first = 1;
because regno is 29, and the reg_n_info array only contains 29
entries. The REG in question is allocated eariler by load_mems.
I wasn't quite sure what you were intending here, so I'll let you
straighten this out.
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com
=============================================================
extern int N;
extern int nrows;
extern int or_num_angles;
typedef struct
{
double value;
int count;
}Histo;
Histo add_histo[10][2][36][36];
void cmd_connection_statistics( )
{
int i,j,k,m;
for(i=0; i<nrows; i++){
for(j=0; j< 2; j++)
for(k=0; k< or_num_angles; k++)
;
}
}