mirror of
https://gcc.gnu.org/git/gcc.git
synced 2024-12-12 05:13:50 +08:00
re PR tree-optimization/42521 (ICE: in graphite_loop_normal_form, at graphite-sese-to-poly.c:2844)
Fix PR42521. 2010-01-07 Sebastian Pop <sebastian.pop@amd.com> PR middle-end/42521 * graphite.c (graphite_finalize): Call scev_reset. (graphite_transform_loops): Do not call scev_reset between the code generation of scops. * testsuite/gcc.dg/graphite/pr42521.c: New. From-SVN: r155728
This commit is contained in:
parent
eaffa76227
commit
fd4a56fff2
@ -1,3 +1,12 @@
|
||||
2010-01-07 Sebastian Pop <sebastian.pop@amd.com>
|
||||
|
||||
PR middle-end/42521
|
||||
* graphite.c (graphite_finalize): Call scev_reset.
|
||||
(graphite_transform_loops): Do not call scev_reset between the code
|
||||
generation of scops.
|
||||
|
||||
* testsuite/gcc.dg/graphite/pr42521.c: New.
|
||||
|
||||
2010-01-07 Sebastian Pop <sebastian.pop@amd.com>
|
||||
|
||||
* graphite-interchange.c (memory_stride_in_loop): Renamed
|
||||
|
@ -228,6 +228,7 @@ graphite_finalize (bool need_cfg_cleanup_p)
|
||||
{
|
||||
if (need_cfg_cleanup_p)
|
||||
{
|
||||
scev_reset ();
|
||||
cleanup_tree_cfg ();
|
||||
profile_status = PROFILE_ABSENT;
|
||||
release_recorded_exits ();
|
||||
@ -279,10 +280,7 @@ graphite_transform_loops (void)
|
||||
check_poly_representation (scop);
|
||||
|
||||
if (transform_done)
|
||||
{
|
||||
scev_reset ();
|
||||
need_cfg_cleanup_p = true;
|
||||
}
|
||||
need_cfg_cleanup_p = true;
|
||||
}
|
||||
|
||||
htab_delete (bb_pbb_mapping);
|
||||
|
18
gcc/testsuite/gcc.dg/graphite/pr42521.c
Normal file
18
gcc/testsuite/gcc.dg/graphite/pr42521.c
Normal file
@ -0,0 +1,18 @@
|
||||
/* { dg-options "-O3 -fgraphite-identity" } */
|
||||
|
||||
extern int *A;
|
||||
extern int B[][4];
|
||||
|
||||
void foo(int im, int jm, int cond)
|
||||
{
|
||||
int i, j;
|
||||
if (cond)
|
||||
for (i = 0; i < 256; i++)
|
||||
A[i] = 0;
|
||||
|
||||
for (i = 0; i < im; i++)
|
||||
for (j = 1; j < jm; j++)
|
||||
if (jm != 8 || j != jm >> 1)
|
||||
B[j][0] ^= B[j-1][0];
|
||||
|
||||
}
|
Loading…
Reference in New Issue
Block a user