From 81e602b572312eb25af11bd25f4aa7a2ba07b3de Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Thu, 1 Aug 2002 23:59:36 +0200 Subject: [PATCH] varasm.c (assemble_visibility): Strip name encoding. * varasm.c (assemble_visibility): Strip name encoding. * gcc.dg/ia64-visibility-2.c: New test. From-SVN: r55953 --- gcc/ChangeLog | 4 ++++ gcc/testsuite/ChangeLog | 4 ++++ gcc/testsuite/gcc.dg/ia64-visibility-2.c | 15 +++++++++++++++ gcc/varasm.c | 3 ++- 4 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 gcc/testsuite/gcc.dg/ia64-visibility-2.c diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 99e8404ce34..5993d719694 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2002-08-01 Jakub Jelinek + + * varasm.c (assemble_visibility): Strip name encoding. + 2002-08-01 Ian Dall * config/ns32k/ns32k.h (TARGET_IEEE_COMPARE): Correct earlier patch. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 5c71ec58b0a..e886217df36 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2002-08-01 Jakub Jelinek + + * gcc.dg/ia64-visibility-2.c: New test. + 2002-08-01 Benjamin Kosnik * g++.old-deja/g++.abi/ptrflags.C (expect): Change diff --git a/gcc/testsuite/gcc.dg/ia64-visibility-2.c b/gcc/testsuite/gcc.dg/ia64-visibility-2.c new file mode 100644 index 00000000000..895ef6d918b --- /dev/null +++ b/gcc/testsuite/gcc.dg/ia64-visibility-2.c @@ -0,0 +1,15 @@ +/* Test visibility attribute. */ +/* { dg-do link { target ia64*-*-linux* } } */ +/* { dg-options "-O2 -fpic" } */ + +int foo (int x); +int bar (int x) __asm__ ("foo") __attribute__ ((visibility ("hidden"))); +int bar (int x) +{ + return x; +} + +int main () +{ + return 0; +} diff --git a/gcc/varasm.c b/gcc/varasm.c index ce6f7318320..d22cb112af3 100644 --- a/gcc/varasm.c +++ b/gcc/varasm.c @@ -4618,7 +4618,8 @@ assemble_visibility (decl, visibility_type) { const char *name; - name = IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (decl)); + name = (* targetm.strip_name_encoding) + (IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (decl))); #ifdef HAVE_GAS_HIDDEN fprintf (asm_out_file, "\t.%s\t%s\n", visibility_type, name);