aboutsummaryrefslogtreecommitdiff
path: root/bfd/ChangeLog
diff options
context:
space:
mode:
authorIgor Tsimbalist <tigor.tools@gmail.com>2016-11-08 12:01:58 +0000
committerNick Clifton <nickc@redhat.com>2016-11-08 12:01:58 +0000
commit089e3718bd8de11fc4d6bbc8d32701033d467960 (patch)
treeb486758f3c84ab5d0ef54fea54ca68f97c4ab38d /bfd/ChangeLog
parent20955dbf718992e83b7c971344931934b62a784f (diff)
downloadgdb-089e3718bd8de11fc4d6bbc8d32701033d467960.zip
gdb-089e3718bd8de11fc4d6bbc8d32701033d467960.tar.gz
gdb-089e3718bd8de11fc4d6bbc8d32701033d467960.tar.bz2
Greatly improve the speed if looking up DWARF line number information.
* dwarf2.c (comp_unit): Add new fields 'lookup_funcinfo_table' and 'number_of_functions' to keep lookup table and number of entries in the table. (line_sequence): Add new fields 'line_info_lookup' and 'num_lines' to keep lookup table and number of entries in the table. (lookup_funcinfo): New structure for lookup table for function references. (build_line_info_table): New function to create and build the lookup table for line information. (lookup_address_in_line_info_table): Use the lookup table instead of traverse a linked list. (compare_lookup_funcinfos): New compare fuction used in sorting of lookup table for function references. (build_lookup_funcinfo_table): New function to create, build and sort the lookup table for functions references. (lookup_address_in_function_table): Use the table instead of traverse a linked list. (_bfd_dwarf2_cleanup_debug_info): Free memory from function references lookup table.
Diffstat (limited to 'bfd/ChangeLog')
-rw-r--r--bfd/ChangeLog22
1 files changed, 22 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 810dd05..d7f097f 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,25 @@
+2016-11-08 Igor Tsimbalist <tigor.tools@gmail.com>
+
+ * dwarf2.c (comp_unit): Add new fields 'lookup_funcinfo_table' and
+ 'number_of_functions' to keep lookup table and number of entries in
+ the table.
+ (line_sequence): Add new fields 'line_info_lookup' and 'num_lines'
+ to keep lookup table and number of entries in the table.
+ (lookup_funcinfo): New structure for lookup table for function
+ references.
+ (build_line_info_table): New function to create and build the lookup
+ table for line information.
+ (lookup_address_in_line_info_table): Use the lookup table instead of
+ traverse a linked list.
+ (compare_lookup_funcinfos): New compare fuction used in sorting of
+ lookup table for function references.
+ (build_lookup_funcinfo_table): New function to create, build and
+ sort the lookup table for functions references.
+ (lookup_address_in_function_table): Use the table instead of
+ traverse a linked list.
+ (_bfd_dwarf2_cleanup_debug_info): Free memory from function references
+ lookup table.
+
2016-11-04 Nick Clifton <nickc@redhat.com>
* targets.c (bfd_target_vector): Only add riscv_elf32_vec target