mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-23 03:29:47 +08:00
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.
This commit is contained in:
@ -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>
|
2021-05-17 Simon Marchi <simon.marchi@polymtl.ca>
|
||||||
|
|
||||||
* py-project.toml: New.
|
* py-project.toml: New.
|
||||||
|
@ -7351,19 +7351,16 @@ struct tu_abbrev_offset
|
|||||||
: sig_type (sig_type_), abbrev_offset (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;
|
signatured_type *sig_type;
|
||||||
sect_offset abbrev_offset;
|
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.
|
/* Efficiently read all the type units.
|
||||||
|
|
||||||
The efficiency is because we sort TUs by the abbrev table they use and
|
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 (),
|
std::sort (sorted_by_abbrev.begin (), sorted_by_abbrev.end ());
|
||||||
sort_tu_by_abbrev_offset);
|
|
||||||
|
|
||||||
abbrev_offset = (sect_offset) ~(unsigned) 0;
|
abbrev_offset = (sect_offset) ~(unsigned) 0;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user