void solaris_assemble_visibility (tree decl, int vis ATTRIBUTE_UNUSED) { #ifdef HAVE_GAS_HIDDEN /* Sun as uses .symbolic for STV_PROTECTED. STV_INTERNAL is marked as `currently reserved', but the linker treats it like STV_HIDDEN. Sun Studio 12.1 cc emits .hidden instead. There are 3 Sun extensions GCC doesn't yet know about: STV_EXPORTED, STV_SINGLETON, and STV_ELIMINATE. See Linker and Libraries Guide, Ch. 2, Link-Editor, Defining Additional Symbols, and Ch. 7, Object-File Format, Symbol Table Section. */ static const char * const visibility_types[] = { NULL, "symbolic", "hidden", "hidden" }; const char *name, *type; name = IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (decl)); type = visibility_types[vis]; fprintf (asm_out_file, "\t.%s\t", type); assemble_name (asm_out_file, name); fprintf (asm_out_file, "\n"); #else if (!DECL_ARTIFICIAL (decl)) warning (OPT_Wattributes, "visibility attribute not supported " "in this configuration; ignored"); #endif }
static void vax_output_mi_thunk (FILE * file, tree thunk ATTRIBUTE_UNUSED, HOST_WIDE_INT delta, HOST_WIDE_INT vcall_offset ATTRIBUTE_UNUSED, tree function) { fprintf (file, "\t.word 0x0ffc\n\taddl2 $" HOST_WIDE_INT_PRINT_DEC, delta); asm_fprintf (file, ",4(%Rap)\n"); fprintf (file, "\tjmp "); assemble_name (file, XSTR (XEXP (DECL_RTL (function), 0), 0)); fprintf (file, "+2\n"); }