aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2021-05-17 12:50:33 -0600
committerTom Tromey <tom@tromey.com>2021-05-17 12:59:40 -0600
commit16e0020bfc845d87f2f3584414c4efa2454f8d05 (patch)
tree2a7c8fe83e758afbc5754ac47232249f471593b1
parent5277208d3291cf9e4ffae4ebd90b726998f3f6d4 (diff)
downloadgdb-16e0020bfc845d87f2f3584414c4efa2454f8d05.zip
gdb-16e0020bfc845d87f2f3584414c4efa2454f8d05.tar.gz
gdb-16e0020bfc845d87f2f3584414c4efa2454f8d05.tar.bz2
Replace sort_tu_by_abbrev_offset with operator<
I noticed that sort_tu_by_abbrev_offset only has a single caller. It seemed simpler to replace it with an implementation of operator< instead. 2021-05-17 Tom Tromey <tom@tromey.com> * dwarf2/read.c (tu_abbrev_offset::operator<): New method. (sort_tu_by_abbrev_offset): Remove. (build_type_psymtabs): Update.
-rw-r--r--gdb/ChangeLog6
-rw-r--r--gdb/dwarf2/read.c18
2 files changed, 13 insertions, 11 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 0014d75..b4fd2bb 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,9 @@
+2021-05-17 Tom Tromey <tom@tromey.com>
+
+ * dwarf2/read.c (tu_abbrev_offset::operator<): New method.
+ (sort_tu_by_abbrev_offset): Remove.
+ (build_type_psymtabs): Update.
+
2021-05-17 Simon Marchi <simon.marchi@polymtl.ca>
* py-project.toml: New.
diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c
index ac786ab..f1bb9b2 100644
--- a/gdb/dwarf2/read.c
+++ b/gdb/dwarf2/read.c
@@ -7351,19 +7351,16 @@ struct tu_abbrev_offset
: sig_type (sig_type_), abbrev_offset (abbrev_offset_)
{}
+ /* This is used when sorting. */
+ bool operator< (const tu_abbrev_offset &other)
+ {
+ return abbrev_offset < other.abbrev_offset;
+ }
+
signatured_type *sig_type;
sect_offset abbrev_offset;
};
-/* Helper routine for build_type_psymtabs, passed to std::sort. */
-
-static bool
-sort_tu_by_abbrev_offset (const struct tu_abbrev_offset &a,
- const struct tu_abbrev_offset &b)
-{
- return a.abbrev_offset < b.abbrev_offset;
-}
-
/* Efficiently read all the type units.
The efficiency is because we sort TUs by the abbrev table they use and
@@ -7431,8 +7428,7 @@ build_type_psymtabs (dwarf2_per_objfile *per_objfile)
}
}
- std::sort (sorted_by_abbrev.begin (), sorted_by_abbrev.end (),
- sort_tu_by_abbrev_offset);
+ std::sort (sorted_by_abbrev.begin (), sorted_by_abbrev.end ());
abbrev_offset = (sect_offset) ~(unsigned) 0;