aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorBernd Edlinger <bernd.edlinger@hotmail.de>2024-08-24 08:37:53 +0200
committerBernd Edlinger <bernd.edlinger@hotmail.de>2024-08-26 15:41:06 +0200
commiteb63f9580f0220e347034ef337dbc93d12931d6c (patch)
treeb7d61d394cadb58c047eaa400a78491069eb835b /gcc
parenta8260ebeae0f817bc7adf99cf62b604b1e2d3895 (diff)
downloadgcc-eb63f9580f0220e347034ef337dbc93d12931d6c.zip
gcc-eb63f9580f0220e347034ef337dbc93d12931d6c.tar.gz
gcc-eb63f9580f0220e347034ef337dbc93d12931d6c.tar.bz2
Fix bootstap-errors due to enabling -gvariable-location-views
This recent change triggered various bootstap-errors, mostly on x86 targets because line info advance address entries were output in the wrong section table. The switch to the wrong line table happened in dwarfout_set_ignored_loc. It must use the same section as the earlier called dwarf2out_switch_text_section. But also ft32-elf was affected, because the assembler choked on something simple as ".2byte .LM2-.LM1", but fortunately it is able to use native location views, the configure test was just not executed because the ft32 "nop" instruction was missing. gcc/ChangeLog: PR debug/116470 * configure.ac: Add the "nop" instruction for cpu type ft32. * configure: Regenerate. * dwarf2out.cc (dwarf2out_set_ignored_loc): Use the correct line info section.
Diffstat (limited to 'gcc')
-rwxr-xr-xgcc/configure2
-rw-r--r--gcc/configure.ac2
-rw-r--r--gcc/dwarf2out.cc2
3 files changed, 3 insertions, 3 deletions
diff --git a/gcc/configure b/gcc/configure
index 557ea5f..3d301b6 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -31398,7 +31398,7 @@ esac
case "$cpu_type" in
aarch64 | alpha | arc | arm | avr | bfin | cris | csky | i386 | loongarch | m32c \
| m68k | microblaze | mips | nds32 | nios2 | pa | riscv | rs6000 | score | sparc \
- | visium | xstormy16 | xtensa)
+ | visium | xstormy16 | xtensa | ft32)
insn="nop"
;;
ia64 | s390)
diff --git a/gcc/configure.ac b/gcc/configure.ac
index eaa01d0..8a2d2b0 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -5610,7 +5610,7 @@ esac
case "$cpu_type" in
aarch64 | alpha | arc | arm | avr | bfin | cris | csky | i386 | loongarch | m32c \
| m68k | microblaze | mips | nds32 | nios2 | pa | riscv | rs6000 | score | sparc \
- | visium | xstormy16 | xtensa)
+ | visium | xstormy16 | xtensa | ft32)
insn="nop"
;;
ia64 | s390)
diff --git a/gcc/dwarf2out.cc b/gcc/dwarf2out.cc
index 633900b..3f040da 100644
--- a/gcc/dwarf2out.cc
+++ b/gcc/dwarf2out.cc
@@ -28939,7 +28939,7 @@ dwarf2out_set_ignored_loc (unsigned int line, unsigned int column,
dw_fde_ref fde = cfun->fde;
fde->ignored_debug = false;
- set_cur_line_info_table (function_section (fde->decl));
+ set_cur_line_info_table (current_function_section ());
dwarf2out_source_line (line, column, filename, 0, true);
}