This is the mail archive of the binutils-cvs@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] Use std::upper_bound to simplify code a bit.


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=45a4fb1a700abeb4b3d8315b312ab31eee8efe72

commit 45a4fb1a700abeb4b3d8315b312ab31eee8efe72
Author: Rafael �vila de Espíndola <rafael.espindola@gmail.com>
Date:   Tue Feb 17 10:43:20 2015 -0500

    Use std::upper_bound to simplify code a bit.
    
    With std::upper_bound we don't have to check p->input_offset > input_offset.

Diff:
---
 gold/ChangeLog |  4 ++++
 gold/merge.cc  | 13 +++++--------
 2 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/gold/ChangeLog b/gold/ChangeLog
index f83c652..67efa58 100644
--- a/gold/ChangeLog
+++ b/gold/ChangeLog
@@ -1,3 +1,7 @@
+2015-02-17  Rafael �vila de Espíndola <rafael.espindola@gmail.com>
+
+	* merge.cc (get_output_offset): Use upper_bound instead of lower_bound.
+
 2015-02-09  Mark Wielaard  <mjw@redhat.com>
 
 	* gdb-index.cc (Gdb_index_info_reader::visit_top_die): Recognize
diff --git a/gold/merge.cc b/gold/merge.cc
index f547388..bf00481 100644
--- a/gold/merge.cc
+++ b/gold/merge.cc
@@ -162,15 +162,12 @@ Object_merge_map::get_output_offset(const Merge_map* merge_map,
   Input_merge_entry entry;
   entry.input_offset = input_offset;
   std::vector<Input_merge_entry>::const_iterator p =
-    std::lower_bound(map->entries.begin(), map->entries.end(),
+    std::upper_bound(map->entries.begin(), map->entries.end(),
 		     entry, Input_merge_compare());
-  if (p == map->entries.end() || p->input_offset > input_offset)
-    {
-      if (p == map->entries.begin())
-	return false;
-      --p;
-      gold_assert(p->input_offset <= input_offset);
-    }
+  if (p == map->entries.begin())
+    return false;
+  --p;
+  gold_assert(p->input_offset <= input_offset);
 
   if (input_offset - p->input_offset
       >= static_cast<section_offset_type>(p->length))


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]