diff options
Diffstat (limited to 'gcc/config/i386/midipix.h')
-rw-r--r-- | gcc/config/i386/midipix.h | 33 |
1 files changed, 32 insertions, 1 deletions
diff --git a/gcc/config/i386/midipix.h b/gcc/config/i386/midipix.h index 3502ba618..2354cf2ce 100644 --- a/gcc/config/i386/midipix.h +++ b/gcc/config/i386/midipix.h @@ -68,6 +68,8 @@ ? MS_ABI \ : SYSV_ABI +#undef SYMBOL_REF_DLLIMPORT_P +#define SYMBOL_REF_DLLIMPORT_P midipix_symbol_ref_dllimport_p #undef MULTIPLE_SYMBOL_SPACES #define MULTIPLE_SYMBOL_SPACES (1) @@ -161,6 +163,21 @@ #undef RODATA_SECTION_NAME #define RODATA_SECTION_NAME ".rdata,\"r\"" +#undef GOT_SECTION_NAME +#define GOT_SECTION_NAME ".got" + +#undef PROTECTED_SECTION_NAME +#define PROTECTED_SECTION_NAME GOT_SECTION_NAME + +#undef HIDDEN_SECTION_NAME +#define HIDDEN_SECTION_NAME ".hidden" + +#undef INTERNAL_SECTION_NAME +#define INTERNAL_SECTION_NAME ".intern" + +#undef GOT_SECTION_ATTR +#define GOT_SECTION_ATTR ",\"r\"" + #undef GAS_PE_ASM_SET_OP #define GAS_PE_ASM_SET_OP "\t.set\t" @@ -205,6 +222,9 @@ #undef ASM_OUTPUT_DWARF_OFFSET #define ASM_OUTPUT_DWARF_OFFSET midipix_asm_output_dwarf_offset +#undef ASM_OUTPUT_GOT_ENTRY +#define ASM_OUTPUT_GOT_ENTRY midipix_asm_output_got_entry + /* assembler labels */ #undef USER_LABEL_PREFIX #define USER_LABEL_PREFIX (TARGET_NT64 ? "" : "_") @@ -260,7 +280,7 @@ #define ASM_OUTPUT_ALIGNED_BSS asm_output_aligned_bss #undef ASM_OUTPUT_ALIGNED_DECL_COMMON -#define ASM_OUTPUT_ALIGNED_DECL_COMMON i386_pe_asm_output_aligned_decl_common +#define ASM_OUTPUT_ALIGNED_DECL_COMMON midipix_i386_pe_asm_output_aligned_decl_common #undef TARGET_ASM_UNIQUE_SECTION #define TARGET_ASM_UNIQUE_SECTION i386_pe_unique_section @@ -348,6 +368,7 @@ extern void midipix_asm_output_external (FILE * asmout, tree decl, const char * extern void midipix_asm_output_def_from_decls (FILE * asmout, tree decl, tree target); extern void midipix_asm_output_external_libcall (FILE * asmout, rtx fn); +extern void midipix_asm_output_got_entry (FILE * asmout, const char * name, tree decl, section * sect); extern void midipix_asm_declare_object_name (FILE * asmout, const char * name, tree decl); extern void midipix_i386_pe_start_function (FILE * asmout, const char * name, tree decl); extern void midipix_i386_pe_end_function (FILE * asmout, const char * name, tree decl); @@ -366,6 +387,14 @@ extern section * midipix_i386_pe_function_section( bool startup, bool exit); +extern void midipix_i386_pe_asm_output_aligned_decl_common( + FILE * stream, + tree decl, + const char * name, + HOST_WIDE_INT size, + HOST_WIDE_INT align); + +extern int midipix_symbol_ref_dllimport_p(rtx symbol); /* inlined functions */ static inline void midipix_extra_os_cpp_builtins(void) @@ -379,6 +408,7 @@ static inline void midipix_extra_os_cpp_builtins(void) static inline void midipix_target_os_cpp_builtins(void) { builtin_define_std("__PE__"); + builtin_define_std("__PE_VISIBILITY__"); builtin_define_std("__midipix__"); midipix_extra_os_cpp_builtins(); } @@ -389,3 +419,4 @@ static inline int midipix_i386_pe_reloc_rw_mask (void) } #endif + |