Commit b01e88e5 by Ilya Enkovich Committed by Ilya Enkovich

re PR target/69917 (gcc.target/i386/chkp-hidden-def.c FAILs)

gcc/

	PR target/69917
	* config/i386/sol2.h (ASM_OUTPUT_DEF_FROM_DECLS): Follow
	transparent alias chain for decl assembler name.
	* config/sol2.c (solaris_assemble_visibility): Likewise.

From-SVN: r234423
parent 4af0f474
2016-03-23 Ilya Enkovich <enkovich.gnu@gmail.com>
PR target/69917
* config/i386/sol2.h (ASM_OUTPUT_DEF_FROM_DECLS): Follow
transparent alias chain for decl assembler name.
* config/sol2.c (solaris_assemble_visibility): Likewise.
2016-03-23 Kyrylo Tkachov <kyrylo.tkachov@arm.com> 2016-03-23 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/arm1020e.md (1020call_op): Reduce reservation * config/arm/arm1020e.md (1020call_op): Reduce reservation
......
...@@ -137,8 +137,9 @@ along with GCC; see the file COPYING3. If not see ...@@ -137,8 +137,9 @@ along with GCC; see the file COPYING3. If not see
/* The Solaris assembler wants a .local for non-exported aliases. */ /* The Solaris assembler wants a .local for non-exported aliases. */
#define ASM_OUTPUT_DEF_FROM_DECLS(FILE, DECL, TARGET) \ #define ASM_OUTPUT_DEF_FROM_DECLS(FILE, DECL, TARGET) \
do { \ do { \
const char *declname = \ tree id = DECL_ASSEMBLER_NAME (DECL); \
IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (DECL)); \ ultimate_transparent_alias_target (&id); \
const char *declname = IDENTIFIER_POINTER (id); \
ASM_OUTPUT_DEF ((FILE), declname, \ ASM_OUTPUT_DEF ((FILE), declname, \
IDENTIFIER_POINTER (TARGET)); \ IDENTIFIER_POINTER (TARGET)); \
if (! TREE_PUBLIC (DECL)) \ if (! TREE_PUBLIC (DECL)) \
......
...@@ -142,8 +142,11 @@ solaris_assemble_visibility (tree decl, int vis ATTRIBUTE_UNUSED) ...@@ -142,8 +142,11 @@ solaris_assemble_visibility (tree decl, int vis ATTRIBUTE_UNUSED)
}; };
const char *name, *type; const char *name, *type;
tree id = DECL_ASSEMBLER_NAME (decl);
name = IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (decl)); while (IDENTIFIER_TRANSPARENT_ALIAS (id))
id = TREE_CHAIN (id);
name = IDENTIFIER_POINTER (id);
type = visibility_types[vis]; type = visibility_types[vis];
fprintf (asm_out_file, "\t.%s\t", type); fprintf (asm_out_file, "\t.%s\t", type);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment