aboutsummaryrefslogtreecommitdiff
path: root/gdb/breakpoint.h
diff options
context:
space:
mode:
authorJan Kratochvil <jan.kratochvil@redhat.com>2009-10-25 19:35:26 +0000
committerJan Kratochvil <jan.kratochvil@redhat.com>2009-10-25 19:35:26 +0000
commit876fa593f067a95e645aaed975da6b9d2c9d63fd (patch)
tree68405a753d558c1585dd664210ce288b8c8b4519 /gdb/breakpoint.h
parent72adc4fad75cca8235786832069b26e7ae3ba5cf (diff)
downloadgdb-876fa593f067a95e645aaed975da6b9d2c9d63fd.zip
gdb-876fa593f067a95e645aaed975da6b9d2c9d63fd.tar.gz
gdb-876fa593f067a95e645aaed975da6b9d2c9d63fd.tar.bz2
gdb/
Performance optimize large bp_location count. * breakpoint.c (ALL_BP_LOCATIONS_SAFE): Remove. (ALL_BP_LOCATIONS): New parameter BP_TMP. Use now bp_location and bp_location_count. (bp_location_chain): Remove variable. (bp_location, bp_location_count) (bp_location_placed_address_before_address_max) (bp_location_shadow_len_after_address_max): New variables. (moribund_locations, update_watchpoint): Update the bp_location variable name. (breakpoint_restore_shadows): Extend the comment. Move the variable b to local blocks. Move the variables bp_addr, bp_size and bptoffset to a local block. New variables bc_l, bc_r and bc. New binary search for the left range boundary. New break on reaching the right range boundary. Move shadow existence conditionals to ... (bp_location_has_shadow): ... a new function. (insert_breakpoint_locations): Replace the temp variable by bp_tmp. Use now ALL_BP_LOCATIONS instead of ALL_BP_LOCATIONS_SAFE. (remove_breakpoints, remove_hw_watchpoints, reattach_breakpoints) (detach_breakpoints): New variable bp_tmp. Update the ALL_BP_LOCATIONS calling convention. (update_breakpoints_after_exec): New variable bplocp_tmp. Update the ALL_BP_LOCATIONS calling convention. (breakpoint_here_p, software_breakpoint_inserted_here_p) (breakpoint_thread_match): New variable bptp_tmp. Drop the const attribute of bpt. Update the ALL_BP_LOCATIONS calling convention. (regular_breakpoint_inserted_here_p): Likewise. Update the bp_location variable name. (mark_breakpoints_out, breakpoint_init_inferior): New variable bptp_tmp. Update the ALL_BP_LOCATIONS calling convention. (bpstat_stop_status): New variables blp_tmp and update_locations. Drop the const attribute of bl. Update the ALL_BP_LOCATIONS calling convention. Protect HIT_COUNT increment by an ENABLE_STATE check. Delay the update_global_location_list call using update_locations. (set_default_breakpoint): Drop the check_duplicates name from comment. (disable_breakpoints_in_shlibs, disable_breakpoints_in_unloaded_shlib): New variable locp_tmp. Update the ALL_BP_LOCATIONS calling convention. (bp_location_compare, bp_location_compare_for_qsort) (bp_location_target_extensions_update): New functions. (check_duplicates, check_duplicates_for): Remove, moving their code ... (update_global_location_list): ... into this existing function. Remove variables next, loc2, old_locations, ret and ix. New variables locp, loc_first, old_location, old_locp and old_location_count. Stop using global_next, create now the array bp_location, sort it by bp_location_compare_for_qsort and call bp_location_target_extensions_update. Change quadratic iteration by loc2 into an in-sync scanning by locp and loc2p. Rename former loc usage as old_loc. (do_vec_free): Remove. (breakpoint_program_space_exit): Update the ALL_BP_LOCATIONS calling convention. (remove_breakpoints_pid): New variable b_tmp. Update the ALL_BP_LOCATIONS calling convention. * breakpoint.h (struct bp_location <global_next>): Remove.
Diffstat (limited to 'gdb/breakpoint.h')
-rw-r--r--gdb/breakpoint.h4
1 files changed, 0 insertions, 4 deletions
diff --git a/gdb/breakpoint.h b/gdb/breakpoint.h
index 46460b6..d23a852 100644
--- a/gdb/breakpoint.h
+++ b/gdb/breakpoint.h
@@ -231,10 +231,6 @@ struct bp_location
the same parent breakpoint. */
struct bp_location *next;
- /* Pointer to the next breakpoint location, in a global
- list of all breakpoint locations. */
- struct bp_location *global_next;
-
/* Type of this breakpoint location. */
enum bp_loc_type loc_type;