Change how reprocessing is done
authorTom Tromey <tom@tromey.com>
Wed, 30 Sep 2020 00:49:08 +0000 (18:49 -0600)
committerTom Tromey <tom@tromey.com>
Wed, 30 Sep 2020 02:29:07 +0000 (20:29 -0600)
commit7a5f294dbd11a64f5231f0fecdb163e3c7ecfaf8
treebdfec01117869bfc6ff2f9ebf7041efc197aa5f7
parent36d378cf86c7b4ed26f2a45cc1a4ea1a3802b4e1
Change how reprocessing is done

Currently gdb keeps a vector of attributes that require reprocessing.
However, now that there is a reprocessing flag in the attribute, we
can remove the vector and instead simply loop over attributes a second
time.  Normally there are not many attributes, so this should be
reasonably cheap.

gdb/ChangeLog
2020-09-29  Tom Tromey  <tom@tromey.com>

* dwarf2/read.c (skip_one_die): Update.
(read_full_die_1): Change how reprocessing is done.
(partial_die_info::read): Update.
(read_attribute_value): Remove need_reprocess parameter.
(read_attribute): Likewise.
* dwarf2/attribute.h (struct attribute) <requires_reprocessing_p>:
New method.
gdb/ChangeLog
gdb/dwarf2/attribute.h
gdb/dwarf2/read.c