[Bug debug/119367] [15 Regression][gcn] libgomp.fortran/target1.f90 with '-O2 -g': '.2byte .LM6-.LM5' – error: ... out of range – since r15-8047-gadb14c7625178b
jakub at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Aug 27 10:29:22 GMT 2025
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119367
--- Comment #14 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Untested fix:
2025-08-27 Jakub Jelinek <jakub@redhat.com>
PR debug/119367
* dwarf2out.cc (output_one_line_info_table) <case LI_adv_address>: If
HAVE_AS_LEB128, use DW_LNS_advance_pc with dw2_asm_output_delta_uleb128
instead of DW_LNS_fixed_advance_pc with dw2_asm_output_delta.
--- gcc/dwarf2out.cc.jj 2025-06-02 11:00:15.382405745 +0200
+++ gcc/dwarf2out.cc 2025-08-27 12:18:01.336936228 +0200
@@ -12997,9 +12997,22 @@ output_one_line_info_table (dw_line_info
view++;
- dw2_asm_output_data (1, DW_LNS_fixed_advance_pc, "fixed advance PC,
increment view to %i", view);
- dw2_asm_output_delta (2, line_label, prev_label,
- "from %s to %s", prev_label, line_label);
+ if (HAVE_AS_LEB128)
+ {
+ dw2_asm_output_data (1, DW_LNS_advance_pc,
+ "advance PC, increment view to %i", view);
+ dw2_asm_output_delta_uleb128 (line_label, prev_label,
+ "from %s to %s", prev_label,
+ line_label);
+ }
+ else
+ {
+ dw2_asm_output_data (1, DW_LNS_fixed_advance_pc,
+ "fixed advance PC, increment view to %i",
+ view);
+ dw2_asm_output_delta (2, line_label, prev_label,
+ "from %s to %s", prev_label, line_label);
+ }
prev_addr = ent;
break;
But configure.ac needs to be tweaked to have some fallback for the gcn case if
objdump isn't there.
More information about the Gcc-bugs
mailing list