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 - rguent...@suse.com
+
+- 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);


Reply via email to