This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Move dwarf2 frame tables to read-only section for AIX


On Mon, 22 Sep 2014, Andrew Dixie wrote:

> I altered the dwarf2 frame and exception table generation so the
> decision on whether to use a read-only or read-write section is an
> independent decision from how the frame tables are registered.
> I renamed EH_FRAME_IN_DATA_SECTION to EH_FRAME_THROUGH_COLLECT2, as it
> now supports read-only, has slightly changed semantics, and I think
> this name better reflects what it currently does rather than what it
> historically did.

If you rename a target macro, the old target macro name needs to be 
poisoned in system.h.

> 2014-09-22  Andrew Dixie  <andrewd@gentrack.com>
> 
>       Move exception tables to read-only memory on AIX.
>        * dwarf2asm.c (dw2_asm_output_encoded_addr_rtx): Add call to
>        ASM_OUTPUT_DWARF_DATAREL.
>        * dwarf2out.c (switch_to_eh_frame_section): Use a read-only section
>        even if EH_FRAME_SECTION_NAME is undefined.  Add call to
>        EH_FRAME_THROUGH_COLLECT2.
>        * except.c (switch_to_exception_section):  Use a read-only section
>        even if EH_FRAME_SECTION_NAME is undefined.
>       * collect2.c (write_c_file_stat): Provide dbase on AIX.
>        (scan_prog_file): Don't output __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_IN_DATA_SECTION): undefine.
>        (EH_FRAME_THROUGH_COLLECT2): define.
>        * config/rs6000/rs6000-aix.c: new file.
>        (rs6000_aix_asm_output_dwarf_pcrel): new function.
>        (rs6000_aix_asm_output_dwarf_datarel): new function.
>        * config/rs6000/rs6000.c (rs6000_xcoff_asm_init_sections): remove
>        assignment of exception_section.

This ChangeLog entry seems very incomplete.  It doesn't mention the 
changes for other architectures, or to defaults.h, or to the 
documentation, for example.

-- 
Joseph S. Myers
joseph@codesourcery.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]