diff options
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/compile/asmgoto-1.c')
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/asmgoto-1.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/compile/asmgoto-1.c b/gcc/testsuite/gcc.c-torture/compile/asmgoto-1.c new file mode 100644 index 000000000..cc34610ab --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/compile/asmgoto-1.c @@ -0,0 +1,30 @@ +void fn (void); + +void +foo (void *x, unsigned long y) +{ + asm goto ("": : : : lab); +lab: + fn (); +} + +static void +bar (unsigned long x) +{ + foo (0, x); +} + +static void +baz (unsigned long x) +{ + if (x > 8192) + bar (x); + else + ({ __here: (unsigned long) &&__here; }); +} + +void +test (void) +{ + baz (16384); +} |