27 lines
442 B
C
27 lines
442 B
C
/* This testcase caused ICE on powerpc at -O3, because regrename did
|
|
not handle match_dup of match_operator if the RTLs were not shared. */
|
|
|
|
struct A
|
|
{
|
|
unsigned char *a0, *a1;
|
|
int a2;
|
|
};
|
|
|
|
void bar (struct A *);
|
|
|
|
unsigned int
|
|
foo (int x)
|
|
{
|
|
struct A a;
|
|
unsigned int b;
|
|
|
|
if (x < -128 || x > 255 || x == -1)
|
|
return 26;
|
|
|
|
a.a0 = (unsigned char *) &b;
|
|
a.a1 = a.a0 + sizeof (unsigned int);
|
|
a.a2 = 0;
|
|
bar (&a);
|
|
return b;
|
|
}
|