diff --git a/binutils-2.27-remove-dwarf2-minmax.patch b/binutils-2.27-remove-dwarf2-minmax.patch new file mode 100644 index 0000000..c65dbe2 --- /dev/null +++ b/binutils-2.27-remove-dwarf2-minmax.patch @@ -0,0 +1,41 @@ +--- binutils.orig/bfd/dwarf2.c 2017-08-08 17:40:39.084385407 +0100 ++++ binutils-2.27/bfd/dwarf2.c 2017-08-08 17:41:34.237754733 +0100 +@@ -215,9 +215,6 @@ struct comp_unit + /* Linked list of the low and high address ranges contained in this + compilation unit as specified in the compilation unit header. */ + struct arange arange; +- /* A single arange containing the lowest and highest +- addresses covered by the compilation unit. */ +- struct arange minmax; + + /* The DW_AT_name attribute (for error messages). */ + char *name; +@@ -1540,16 +1537,11 @@ arange_add (struct comp_unit *unit, stru + /* If the first arange is empty, use it. */ + if (first_arange->high == 0) + { +- unit->minmax.low = first_arange->low = low_pc; +- unit->minmax.high = first_arange->high = high_pc; ++ first_arange->low = low_pc; ++ first_arange->high = high_pc; + return TRUE; + } + +- if (unit->minmax.low > low_pc) +- unit->minmax.low = low_pc; +- if (unit->minmax.high < high_pc) +- unit->minmax.high = high_pc; +- + /* Next see if we can cheaply extend an existing range. */ + arange = first_arange; + do +@@ -3151,9 +3143,6 @@ comp_unit_contains_address (struct comp_ + if (unit->error) + return FALSE; + +- if (unit->minmax.high < addr || unit->minmax.low > addr) +- return FALSE; +- + /* We know that the address *might* be contained within this comp + unit, but we cannot be sure until we check the specific ranges. */ + arange = &unit->arange; diff --git a/binutils.spec b/binutils.spec index 519a460..546b91d 100644 --- a/binutils.spec +++ b/binutils.spec @@ -43,7 +43,7 @@ Summary: A GNU collection of binary utilities Name: %{?cross}binutils%{?_with_debug:-debug} Version: 2.27 -Release: 27%{?dist} +Release: 28%{?dist} License: GPLv3+ Group: Development/Tools URL: http://sources.redhat.com/binutils @@ -110,6 +110,8 @@ Patch29: binutils-2.27-gas-buffer-overflow.patch Patch30: binutils-2.27-aarch64-frag-alignment-filling.patch # Add support for displaying new DWARF5 tags including DW_AT_export_symbols. Patch31: binutils-2.28-DW_AT_export_symbols.patch +# Remove the minmax part of objdump speed improvements patch. +Patch32: binutils-2.27-remove-dwarf2-minmax.patch Provides: bundled(libiberty) @@ -266,6 +268,7 @@ using libelf instead of BFD. %patch29 -p1 %patch30 -p1 %patch31 -p1 +%patch32 -p1 # We cannot run autotools as there is an exact requirement of autoconf-2.59. @@ -632,6 +635,10 @@ exit 0 %endif # %{isnative} %changelog +* Fri Oct 13 2017 Nick Clifton 2.27-28 +- Fix bug in objdump speedup patch. + (#1501014) + * Thu Jul 20 2017 Nick Clifton 2.27-27 - Add support for displaying new DWARF5 tags. (#1472966)