config.host (powerpc-ibm-aix*): Add crtdbase.o to extra_parts.
authorAndrew Dixie <andrewd@gentrack.com>
Fri, 18 Sep 2015 14:10:36 +0000 (14:10 +0000)
committerDavid Edelsohn <dje@gcc.gnu.org>
Fri, 18 Sep 2015 14:10:36 +0000 (10:10 -0400)
commit04218b3564e3462d2e68c11548299d7359ad8c17
treea2da31202b08fdaf8e1ee8716ea6db02c1e77164
parent8cd60b238b40e06647938ef44114da23b6d27391
config.host (powerpc-ibm-aix*): Add crtdbase.o to extra_parts.

libgcc/
        * config.host (powerpc-ibm-aix*): Add crtdbase.o to extra_parts.
        * config/rs6000/crtdbase.S: New file.
        * config/rs6000/t-aix-cxa: Build crtdbase.o.

gcc/
        * defaults.h (EH_FRAME_SECTION_NAME): Depend on
        EH_FRAME_THROUGH_COLLECT2.
        * dwarf2asm.c (dw2_asm_output_encoded_addr_rtx): Add case for
        DW_EH_PE_datarel.
        * dwarf2out.c (switch_to_eh_frame_section): Use a read-only section
        even if EH_FRAME_SECTION_NAME is undefined.  Restrict special
        collect2 labels to EH_FRAME_THROUGH_COLLECT2.
        * except.c (switch_to_exception_section): Use a read-only section
        even if EH_FRAME_SECTION_NAME is undefined.
        * system.h (EH_FRAME_IN_DATA_SECTION): Poison.
        * collect2.c (write_c_file_stat): Provide dbase on AIX.
        (scan_prog_file): Don't export __dso_handle nor
        __gcc_unwind_dbase.
        * config/rs6000/aix.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
        (EH_TABLES_CAN_BE_READ_ONLY): Define.
        (ASM_OUTPUT_DWARF_PCREL): Define.
        (ASM_OUTPUT_DWARF_DATAREL): Define.
        (EH_FRAME_THROUGH_COLLECT2): Define.
        (EH_FRAME_IN_DATA_SECTION): Delete.
        * config/rs6000/rs6000.c (rs6000_aix_asm_output_dwarf_pcrel): New.
        (rs6000_aix_asm_output_dwarf_datarel): New.
        (rs6000_xcoff_asm_init_sections): Don't set exception_section.
        * config/spu/spu-elf.h (EH_FRAME_IN_DATA_SECTION): Delete.
        (EH_FRAME_THROUGH_COLLECT2): Define.
        * config/i386/i386-interix.h (EH_FRAME_IN_DATA_SECTION): Delete.
        (EH_FRAME_THROUGH_COLLECT2): Define.
        (EH_TABLES_CAN_BE_READ_ONLY): Define.
        * doc/tm.texi.in (EH_FRAME_IN_DATA_SECTION): Delete.
        (EH_FRAME_THROUGH_COLLECT2): New.
        (ASM_OUTPUT_DWARF_DATAREL): New.
        * doc/tm.texi: Regenerate.

Co-Authored-By: David Edelsohn <dje.gcc@gmail.com>
From-SVN: r227906
16 files changed:
gcc/ChangeLog
gcc/collect2.c
gcc/config/i386/i386-interix.h
gcc/config/rs6000/rs6000.c
gcc/config/spu/spu-elf.h
gcc/defaults.h
gcc/doc/tm.texi
gcc/doc/tm.texi.in
gcc/dwarf2asm.c
gcc/dwarf2out.c
gcc/except.c
gcc/system.h
libgcc/ChangeLog
libgcc/config.host
libgcc/config/rs6000/crtdbase.S [new file with mode: 0644]
libgcc/config/rs6000/t-aix-cxa