diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/mmix-1.c | 42 |
2 files changed, 46 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index d97cc96..eb39eea 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2002-01-01 Hans-Peter Nilsson <hp@bitrange.com> + + * gcc.dg/mmix-1.c: New test. + 2001-12-31 Richard Henderson <rth@redhat.com> * gcc.dg/asm-5.c: New. diff --git a/gcc/testsuite/gcc.dg/mmix-1.c b/gcc/testsuite/gcc.dg/mmix-1.c new file mode 100644 index 0000000..802ae18 --- /dev/null +++ b/gcc/testsuite/gcc.dg/mmix-1.c @@ -0,0 +1,42 @@ +/* Origin: <hp@bitrange.com> + Test that MMIX -mtoplevel-symbols cause a ":" to be prepended on the + right symbols and only there. */ +/* { dg-do compile { target mmix-*-* } } */ +/* { dg-options "-mtoplevel-symbols" } */ + +static int static_variable = 1; +int global_initialized_variable = 2; +extern int extern_declared_variable; +int common_variable; +extern int extern_declared_function (void); +static int static_function (void); + +int global_defined_function () +{ + static int static_variable_in_function = 2009; + return + static_variable + + static_variable_in_function++ + + global_initialized_variable + + common_variable + + extern_declared_function () + + static_function (); +} + +static int +static_function (void) +{ + if (extern_declared_variable) + return 42; + else + return 42 + global_defined_function (); +} + +/* { dg-final { scan-assembler-not ":static_variable" } } */ +/* { dg-final { scan-assembler-not "(^|\[^:\])global_initialized_variable" } } */ +/* { dg-final { scan-assembler-not "\[^:\]extern_declared_variable" } } */ +/* { dg-final { scan-assembler-not "\[^:\]common_variable" } } */ +/* { dg-final { scan-assembler-not "\[^:\]extern_declared_function" } } */ +/* { dg-final { scan-assembler-not ":static_function" } } */ +/* { dg-final { scan-assembler-not "(^|\[^:\])global_defined_function" } } */ +/* { dg-final { scan-assembler-not "\[^:\]extern_declared_variable" } } */ |