/* PR rtl-optimization/58668 */ | |
/* { dg-do compile } */ | |
/* { dg-options "-O2" } */ | |
/* { dg-additional-options "-mthumb" { target { { arm*-*-* } && arm_thumb2_ok } } } */ | |
void *fn1 (void *); | |
void *fn2 (void *, const char *); | |
void fn3 (void *); | |
void fn4 (void *, int); | |
void * | |
test (void *x) | |
{ | |
void *a, *b; | |
if (!(a = fn1 (x))) | |
return (void *) 0; | |
if (!(b = fn2 (a, "w"))) | |
{ | |
fn3 (a); | |
return (void *) 0; | |
} | |
fn3 (a); | |
fn4 (b, 1); | |
return b; | |
} |