Accepting request 901554 from openSUSE:Factory:RISCV

- gdb-support-dw-lle-start-end.patch: Support DW_LLE_start_end
  (bsc#1187044)

OBS-URL: https://build.opensuse.org/request/show/901554
OBS-URL: https://build.opensuse.org/package/show/devel:gcc/gdb?expand=0&rev=287
This commit is contained in:
Tom de Vries 2021-06-23 14:23:59 +00:00 committed by Git OBS Bridge
parent abc58e4280
commit 8af5f7adcd
3 changed files with 54 additions and 1 deletions

View File

@ -0,0 +1,45 @@
From 80d1206d7fea6eb756183e2825abdfd0f00cd976 Mon Sep 17 00:00:00 2001
From: Andreas Schwab <schwab@suse.de>
Date: Mon, 21 Jun 2021 11:38:23 +0200
Subject: [PATCH] gdb: Support DW_LLE_start_end
Without that it is impossible to debug on riscv64.
gdb/
PR symtab/27999
* dwarf2/loc.c (decode_debug_loclists_addresses): Support
DW_LLE_start_end.
diff --git a/gdb/dwarf2/loc.c b/gdb/dwarf2/loc.c
index b7e30e3cb4a..d57cdc165ba 100644
--- a/gdb/dwarf2/loc.c
+++ b/gdb/dwarf2/loc.c
@@ -255,9 +255,27 @@ decode_debug_loclists_addresses (dwarf2_per_cu_data *per_cu,
*new_ptr = loc_ptr;
return DEBUG_LOC_OFFSET_PAIR;
+ case DW_LLE_start_end:
+ if (loc_ptr + 2 * addr_size > buf_end)
+ return DEBUG_LOC_BUFFER_OVERFLOW;
+
+ if (signed_addr_p)
+ *low = extract_signed_integer (loc_ptr, addr_size, byte_order);
+ else
+ *low = extract_unsigned_integer (loc_ptr, addr_size, byte_order);
+
+ loc_ptr += addr_size;
+ if (signed_addr_p)
+ *high = extract_signed_integer (loc_ptr, addr_size, byte_order);
+ else
+ *high = extract_unsigned_integer (loc_ptr, addr_size, byte_order);
+
+ loc_ptr += addr_size;
+ *new_ptr = loc_ptr;
+ return DEBUG_LOC_START_END;
+
/* Following cases are not supported yet. */
case DW_LLE_startx_endx:
- case DW_LLE_start_end:
case DW_LLE_default_location:
default:
return DEBUG_LOC_INVALID_ENTRY;

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Wed Jun 23 11:52:54 UTC 2021 - Andreas Schwab <schwab@suse.de>
- gdb-support-dw-lle-start-end.patch: Support DW_LLE_start_end
(bsc#1187044)
-------------------------------------------------------------------
Thu Jun 17 11:19:14 UTC 2021 - Tom de Vries <tdevries@suse.com>

View File

@ -1,5 +1,5 @@
#
# spec file
# spec file for package gdb-testresults
#
# Copyright (c) 2021 SUSE LLC
# Copyright (c) 2012 RedHat
@ -320,6 +320,7 @@ Patch2019: gdb-build-hardcode-with-included-regex.patch
Patch2020: gdb-breakpoint-fix-assert-in-jit_event_handler.patch
Patch2021: gdb-save-restore-file-offset-while-reading-notes-in-core-file.patch
Patch2022: gdb-symtab-fix-infinite-recursion-in-dwarf2_cu-get_builder-again.patch
Patch2023: gdb-support-dw-lle-start-end.patch
# Testsuite patches
@ -756,6 +757,7 @@ find -name "*.info*"|xargs rm -f
%patch2020 -p1
%patch2021 -p1
%patch2022 -p1
%patch2023 -p1
%patch2500 -p1
%if 0%{?suse_version} > 1500