Hello community, here is the log from the commit of package dwz for openSUSE:Factory checked in at 2018-04-16 12:42:46 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/dwz (Old) and /work/SRC/openSUSE:Factory/.dwz.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "dwz" Mon Apr 16 12:42:46 2018 rev:5 rq:595595 version:0.12 Changes: -------- --- /work/SRC/openSUSE:Factory/dwz/dwz.changes 2018-03-24 16:04:23.651259155 +0100 +++ /work/SRC/openSUSE:Factory/.dwz.new/dwz.changes 2018-04-16 12:42:47.994623033 +0200 @@ -1,0 +2,6 @@ +Wed Apr 11 11:02:06 UTC 2018 - [email protected] + +- Add dwz-0.12-DW_OP_GNU_variable_value.patch to handle + DW_OP_GNU_variable_value. + +------------------------------------------------------------------- New: ---- dwz-0.12-DW_OP_GNU_variable_value.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ dwz.spec ++++++ --- /var/tmp/diff_new_pack.nBOKPh/_old 2018-04-16 12:42:48.798593776 +0200 +++ /var/tmp/diff_new_pack.nBOKPh/_new 2018-04-16 12:42:48.802593631 +0200 @@ -26,6 +26,7 @@ Group: Development/Tools/Building Source: %{name}-%{version}.tar.xz Patch0: dwz-0.12-ignore-nobits.patch +Patch1: dwz-0.12-DW_OP_GNU_variable_value.patch BuildRequires: libelf-devel BuildRequires: xz @@ -50,6 +51,7 @@ %prep %setup -q -n %{name} %patch0 -p1 +%patch1 -p1 %build make %{?_smp_mflags} CFLAGS="%{optflags}" ++++++ dwz-0.12-DW_OP_GNU_variable_value.patch ++++++ diff --git a/dwarf2.def b/dwarf2.def index e9a8bca..17311fa 100644 --- a/dwarf2.def +++ b/dwarf2.def @@ -588,6 +588,9 @@ DW_OP (DW_OP_GNU_reinterpret, 0xf9) DW_OP (DW_OP_GNU_parameter_ref, 0xfa) /* Extension for Fission. See http://gcc.gnu.org/wiki/DebugFission. */ DW_OP (DW_OP_GNU_addr_index, 0xfb) +/* The GNU variable value extension. + See http://dwarfstd.org/ShowIssue.php?issue=161109.2 . */ +DW_OP (DW_OP_GNU_variable_value, 0xfd) /* HP extensions. */ DW_OP_DUP (DW_OP_HP_unknown, 0xe0) /* Ouch, the same as GNU_push_tls_address. */ DW_OP (DW_OP_HP_is_value, 0xe1) diff --git a/dwz.c b/dwz.c index b3b779d..b387ebc 100644 --- a/dwz.c +++ b/dwz.c @@ -1522,6 +1522,7 @@ read_exprloc (DSO *dso, dw_die_ref die, unsigned char *ptr, size_t len, ptr += 4; break; case DW_OP_call_ref: + case DW_OP_GNU_variable_value: case DW_OP_GNU_implicit_pointer: cu = die_cu (die); addr = read_size (ptr, cu->cu_version == 2 ? ptr_size : 4); @@ -8576,6 +8577,7 @@ adjust_exprloc (dw_cu_ref cu, dw_die_ref die, dw_cu_ref refcu, ptr += 4; break; case DW_OP_call_ref: + case DW_OP_GNU_variable_value: case DW_OP_GNU_implicit_pointer: addr = read_size (ptr, refcu->cu_version == 2 ? ptr_size : 4); assert (cu->cu_version == refcu->cu_version);
