diff options
author | Martin Liska <mliska@suse.cz> | 2022-09-07 11:47:40 +0200 |
---|---|---|
committer | Martin Liska <mliska@suse.cz> | 2022-09-07 14:18:04 +0200 |
commit | 7abcdb06e31d82d4933cb6e0a626c3ccb28fa0c3 (patch) | |
tree | b4adf7a01fd9ced3a957dac3b46ea5e308b4e40e /gcc/dwarf2asm.cc | |
parent | a262f969d6fd936f4fb5d9e1d5756b0dcbc925b2 (diff) | |
download | gcc-7abcdb06e31d82d4933cb6e0a626c3ccb28fa0c3.zip gcc-7abcdb06e31d82d4933cb6e0a626c3ccb28fa0c3.tar.gz gcc-7abcdb06e31d82d4933cb6e0a626c3ccb28fa0c3.tar.bz2 |
Restore XCOFF for DWARF on AIX.
PR bootstrap/106855
gcc/ChangeLog:
* collect2.cc (scan_prog_file): Restore if XCOFF_DEBUGGING_INFO.
* config/rs6000/rs6000.cc (rs6000_option_override_internal):
Restore usage of XCOFF_DEBUGGING_INFO.
* config/rs6000/xcoff.h (XCOFF_DEBUGGING_INFO): Restore.
* dwarf2asm.cc (XCOFF_DEBUGGING_INFO): Restore support for
XCOFF_DEBUGGING_INFO.
(dw2_asm_output_nstring): Likewise.
(USE_LINKONCE_INDIRECT): Likewise.
* dwarf2out.cc (XCOFF_DEBUGGING_INFO): Likewise.
(HAVE_XCOFF_DWARF_EXTRAS): Likewise.
(output_fde): Likewise.
(output_call_frame_info): Likewise.
(have_macinfo): Likewise.
(add_AT_loc_list): Likewise.
(add_AT_view_list): Likewise.
(output_compilation_unit_header): Likewise.
(output_pubnames): Likewise.
(output_aranges): Likewise.
(output_line_info): Likewise.
(output_macinfo): Likewise.
(dwarf2out_finish): Likewise.
(dwarf2out_early_finish): Likewise.
Diffstat (limited to 'gcc/dwarf2asm.cc')
-rw-r--r-- | gcc/dwarf2asm.cc | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/gcc/dwarf2asm.cc b/gcc/dwarf2asm.cc index 7eac83f..274f574 100644 --- a/gcc/dwarf2asm.cc +++ b/gcc/dwarf2asm.cc @@ -35,6 +35,10 @@ along with GCC; see the file COPYING3. If not see #include "emit-rtl.h" #include "fold-const.h" +#ifndef XCOFF_DEBUGGING_INFO +#define XCOFF_DEBUGGING_INFO 0 +#endif + /* Output an unaligned integer with the given value and size. Prefer not to print a newline, since the caller may want to add a comment. */ @@ -380,13 +384,16 @@ dw2_asm_output_nstring (const char *str, size_t orig_len, if (flag_debug_asm && comment) { - fputs ("\t.ascii \"", asm_out_file); + if (XCOFF_DEBUGGING_INFO) + fputs ("\t.byte \"", asm_out_file); + else + fputs ("\t.ascii \"", asm_out_file); for (i = 0; i < len; i++) { int c = str[i]; if (c == '\"') - fputc ('\\', asm_out_file); + fputc (XCOFF_DEBUGGING_INFO ? '\"' : '\\', asm_out_file); else if (c == '\\') fputc ('\\', asm_out_file); if (ISPRINT (c)) @@ -906,7 +913,7 @@ static GTY(()) hash_map<const char *, tree> *indirect_pool; static GTY(()) int dw2_const_labelno; #if defined(HAVE_GAS_HIDDEN) -# define USE_LINKONCE_INDIRECT (SUPPORTS_ONE_ONLY) +# define USE_LINKONCE_INDIRECT (SUPPORTS_ONE_ONLY && !XCOFF_DEBUGGING_INFO) #else # define USE_LINKONCE_INDIRECT 0 #endif |