URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 298 |
Rev 338 |
/* For PR tree-optimization/14784 */
|
/* For PR tree-optimization/14784 */
|
|
|
/* { dg-do compile } */
|
/* { dg-do compile } */
|
/* { dg-options "-O2 -funswitch-loops -fdump-tree-unswitch-details" } */
|
/* { dg-options "-O2 -funswitch-loops -fdump-tree-unswitch-details" } */
|
|
|
typedef struct bitmap_element_def
|
typedef struct bitmap_element_def
|
{
|
{
|
unsigned int indx;
|
unsigned int indx;
|
} bitmap_element;
|
} bitmap_element;
|
|
|
typedef struct bitmap_head_def {
|
typedef struct bitmap_head_def {
|
bitmap_element *first;
|
bitmap_element *first;
|
int using_obstack;
|
int using_obstack;
|
} bitmap_head;
|
} bitmap_head;
|
typedef struct bitmap_head_def *bitmap;
|
typedef struct bitmap_head_def *bitmap;
|
|
|
bitmap_element *bitmap_free;
|
bitmap_element *bitmap_free;
|
|
|
void foo (bitmap head, bitmap_element *elt)
|
void foo (bitmap head, bitmap_element *elt)
|
{
|
{
|
while (1)
|
while (1)
|
{
|
{
|
/* Alias analysis problems used to prevent us from recognizing
|
/* Alias analysis problems used to prevent us from recognizing
|
that this condition is invariant. */
|
that this condition is invariant. */
|
if (head->using_obstack)
|
if (head->using_obstack)
|
bitmap_free = elt;
|
bitmap_free = elt;
|
}
|
}
|
}
|
}
|
|
|
|
|
/* { dg-final { scan-tree-dump-times "Unswitching" 1 "unswitch"} } */
|
/* { dg-final { scan-tree-dump-times "Unswitching" 1 "unswitch"} } */
|
/* { dg-final { cleanup-tree-dump "unswitch" } } */
|
/* { dg-final { cleanup-tree-dump "unswitch" } } */
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.