URL
https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk
Go to most recent revision |
Only display areas with differences |
Details |
Blame |
View Log
Rev 298 |
Rev 384 |
/* { dg-do compile } */
|
/* { dg-do compile } */
|
/* { dg-options "-O1 -fdump-tree-optimized-blocks" } */
|
/* { dg-options "-O1 -fdump-tree-optimized-blocks" } */
|
|
|
int c, d;
|
int c, d;
|
|
|
int
|
int
|
bar (int a)
|
bar (int a)
|
{
|
{
|
void *p;
|
void *p;
|
int b;
|
int b;
|
|
|
if (a!=0)
|
if (a!=0)
|
{
|
{
|
b = 3;
|
b = 3;
|
p = &&L0;
|
p = &&L0;
|
}
|
}
|
else
|
else
|
{
|
{
|
b = 5;
|
b = 5;
|
p = &&L1;
|
p = &&L1;
|
}
|
}
|
|
|
goto *p;
|
goto *p;
|
|
|
L0:
|
L0:
|
c = b;
|
c = b;
|
return 1;
|
return 1;
|
|
|
L1:
|
L1:
|
d = b;
|
d = b;
|
return 0;
|
return 0;
|
}
|
}
|
|
|
/* The both paths to the block containing the goto *p should
|
/* The both paths to the block containing the goto *p should
|
have been threaded, thus eliminating the need for the goto *p. */
|
have been threaded, thus eliminating the need for the goto *p. */
|
|
|
/* { dg-final { scan-tree-dump-times "goto p" 0 "optimized" } } */
|
/* { dg-final { scan-tree-dump-times "goto p" 0 "optimized" } } */
|
|
|
/* There should not be any abnormal edges as DOM removed the
|
/* There should not be any abnormal edges as DOM removed the
|
computed goto. */
|
computed goto. */
|
|
|
/* { dg-final { scan-tree-dump-times "ab" 0 "optimized" } } */
|
/* { dg-final { scan-tree-dump-times "ab" 0 "optimized" } } */
|
/* { dg-final { cleanup-tree-dump "optimized" } } */
|
/* { dg-final { cleanup-tree-dump "optimized" } } */
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.