aboutsummaryrefslogtreecommitdiff
path: root/gcc/dwarf2out.c
diff options
context:
space:
mode:
authorH.J. Lu <hongjiu.lu@intel.com>2018-08-24 11:28:40 +0000
committerH.J. Lu <hjl@gcc.gnu.org>2018-08-24 04:28:40 -0700
commit1ade64c9d8cd37c8db0a07383189f1719c7164da (patch)
treeecb04543e60bce1503be9cdf83a6e31013c80e0d /gcc/dwarf2out.c
parente144a2b3066ecad2a7c934b1cd437d2afad0018f (diff)
downloadgcc-1ade64c9d8cd37c8db0a07383189f1719c7164da.zip
gcc-1ade64c9d8cd37c8db0a07383189f1719c7164da.tar.gz
gcc-1ade64c9d8cd37c8db0a07383189f1719c7164da.tar.bz2
DWARF: Call set_indirect_string on DW_MACINFO_start_file
Since -gsplit-dwarf -g3 will output filename as indirect string, call set_indirect_string on DW_MACINFO_start_file for -gsplit-dwarf -g3. gcc/ PR debug/79342 * dwarf2out.c (save_macinfo_strings): Call set_indirect_string on DW_MACINFO_start_file for -gsplit-dwarf -g3. gcc/testsuite/ PR debug/79342 * gcc.dg/pr79342.: New test. From-SVN: r263831
Diffstat (limited to 'gcc/dwarf2out.c')
-rw-r--r--gcc/dwarf2out.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index 91af4e8..77317ed 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -28287,6 +28287,12 @@ save_macinfo_strings (void)
&& (debug_str_section->common.flags & SECTION_MERGE) != 0)
set_indirect_string (find_AT_string (ref->info));
break;
+ case DW_MACINFO_start_file:
+ /* -gsplit-dwarf -g3 will also output filename as indirect
+ string. */
+ if (!dwarf_split_debug_info)
+ break;
+ /* Fall through. */
case DW_MACRO_define_strp:
case DW_MACRO_undef_strp:
set_indirect_string (find_AT_string (ref->info));