#include <sys/types.h>#include <stdio.h>#include "libiberty.h"#include "ansidecl.h"#include "hashtab.h"

Go to the source code of this file.
| #define CHAR_BIT 8 |
Definition at line 68 of file hashtab.c.
Referenced by add_vect(), adjust_char_value_len(), automata_list_hash(), blank_padding(), broadcast_scalar(), bundle_state_hash(), c_common_to_target_charset(), cache_presence(), check_absence_pattern_sets(), check_defines(), check_presence_pattern_sets(), compare_states_for_equiv(), const_rtx_hash_1(), cprop(), create_namelist_descriptor(), create_strct_tbl(), cvrt_exp_to_pdg(), cwh_types_get_dope_info(), def_hash(), ffebit_count(), ffebit_kill(), ffebit_new(), ffebit_set(), ffebit_test(), ffetarget_print_binary(), ffetarget_print_hex(), ffetarget_print_octal(), fold_builtin_memset(), fold_view_convert_expr(), folder_driver(), get_basic_type(), get_excl_set(), get_presence_absence_set(), htab_mod_1(), init_const_tbl(), initiate_states(), integer_cst_le(), integer_cst_remainder(), interpret_constructor(), interpret_ref(), interpret_reshape_intrinsic(), interpret_transfer_intrinsic(), output_cycle_reservs(), push_data_value(), put_c_str_in_cn(), put_char_const_in_tbl(), reserv_sets_hash_value(), reshape_intrinsic(), rs6000_hash_constant(), send_attr_ntry(), set_sb_first_attr_idx(), set_unit_reserv(), sizeof_intrinsic(), state_hash(), state_is_differed(), string_hash(), test_unit_reserv(), transfer_intrinsic(), verify_field_decl(), verify_parm_decl(), verify_type(), verify_var_decl(), width_to_mask(), and write_constant().
| #define DELETED_ENTRY ((PTR) 1) |
Definition at line 78 of file hashtab.c.
Referenced by find_empty_slot_for_expand(), htab_clear_slot(), htab_delete(), htab_empty(), htab_expand(), htab_find_slot_with_hash(), htab_find_with_hash(), htab_remove_elt(), htab_remove_elt_with_hash(), htab_traverse(), and htab_traverse_noresize().
| #define EMPTY_ENTRY ((PTR) 0) |
Definition at line 73 of file hashtab.c.
Referenced by find_empty_slot_for_expand(), htab_clear_slot(), htab_delete(), htab_empty(), htab_expand(), htab_find_slot_with_hash(), htab_find_with_hash(), htab_remove_elt(), htab_remove_elt_with_hash(), htab_traverse(), and htab_traverse_noresize().
Value:
{ \
a -= b; a -= c; a ^= (c>>13); \
b -= c; b -= a; b ^= (a<< 8); \
c -= a; c -= b; c ^= ((b&0xffffffff)>>13); \
a -= b; a -= c; a ^= ((c&0xffffffff)>>12); \
b -= c; b -= a; b = (b ^ (a<<16)) & 0xffffffff; \
c -= a; c -= b; c = (c ^ (b>> 5)) & 0xffffffff; \
a -= b; a -= c; a = (a ^ (c>> 3)) & 0xffffffff; \
b -= c; b -= a; b = (b ^ (a<<10)) & 0xffffffff; \
c -= a; c -= b; c = (c ^ (b>>15)) & 0xffffffff; \
}
Definition at line 902 of file hashtab.c.
Referenced by iterative_hash(), iterative_hash_hashval_t(), iterative_hash_host_wide_int(), and iterative_hash_pointer().
Definition at line 475 of file hashtab.c.
References abort, DELETED_ENTRY, EMPTY_ENTRY, htab_mod(), htab_mod_m2(), htab_size, index(), PTR, and size.
Referenced by htab_expand().
| static unsigned int higher_prime_index | ( | unsigned long | n | ) | [static] |
Definition at line 183 of file hashtab.c.
References abort, fprintf(), high, low, and prime_ent::prime.
Referenced by htab_create_alloc(), htab_create_alloc_ex(), htab_empty(), and htab_expand().
Definition at line 756 of file hashtab.c.
References abort, DELETED_ENTRY, EMPTY_ENTRY, and htab_size.
Referenced by _frvfdpic_resolve_final_relocs_info(), cgraph_remove_node(), discard_useless_values(), emit_note_insn_var_location(), ggc_htab_delete(), mark_constant(), maybe_remove_eh_handler(), mips_elf_resolve_final_got_entry(), output_constant_def(), pop_labels_1(), pop_local_label(), remove_exception_handler_label(), remove_stmt_from_eh_region(), remove_stmt_from_eh_region_fn(), see_merge_one_def_extension(), see_merge_one_use_extension(), see_set_prop_unmerged_use(), and variable_was_changed().
| double htab_collisions | ( | htab_t | htab | ) |
Definition at line 818 of file hashtab.c.
Referenced by dump_hash_table(), htab_statistics(), pop_gimplify_context(), print_debug_expr_statistics(), print_restrict_base_statistics(), print_type_hash_statistics(), and print_value_expr_statistics().
Definition at line 402 of file hashtab.c.
Referenced by alloc_mem(), allocate_ssa_names(), analyze_insns_in_loop(), assign_filter_values(), browse_tree(), cgraph_decide_inlining(), compute_ld_motion_mems(), compute_store_table(), conflict_graph_new(), convert_to_eh_region_ranges(), cpp_save_state(), create_name_tags(), create_nesting_tree(), create_structure_vars(), cselib_init(), dataflow_set_init(), DEFUN(), detect_field_duplicates(), fill_hash_bucket(), finalize_nrv(), find_referenced_vars(), fold_build1_stat(), fold_build2_stat(), fold_build3_stat(), for_each_template_parm(), gather_mem_refs(), gt_pch_save(), GTY(), i386_pe_section_type_flags(), init_alias_vars(), init_emit_once(), init_md_reader(), init_md_reader_args_cb(), init_pre(), init_reassoc(), init_update_ssa(), init_varasm_once(), initialize_macros(), initialize_original_copy_tables(), initiate_automata_lists(), initiate_automaton_decl_table(), initiate_bundle_state_table(), initiate_decl_table(), initiate_insn_decl_table(), initiate_states(), instantiate_decl(), instantiate_parameters(), iv_analysis_loop_init(), lang_finalize_version_expr_head(), lower_eh_constructs(), main(), mark_def_site_blocks(), merge_identical_invariants(), move_sese_region_to_fn(), multiply_by_cost(), optimize_inline_calls(), push_gimplify_context(), read_constants(), read_counts_file(), read_rtx(), resolve_mixers(), rewrite_ssa_into_ssa(), rs6000_add_gc_roots(), rtl_seqabstr(), scev_initialize(), see_initialize_data_structures(), see_merge_one_def_extension(), see_set_prop_merged_def(), see_set_prop_unmerged_def(), see_set_prop_unmerged_use(), see_store_reference_and_extension(), sjlj_assign_call_site_values(), ssa_rename_from_initialize(), start_recording_case_labels(), thread_block(), tlink_init(), tree_lower_complex(), tree_sra(), tree_ssa_dominator_optimize(), tree_ssa_iv_optimize_init(), tree_ssa_uncprop(), update_ssa(), verify_stmt_tree(), verify_stmts(), vn_init(), vt_initialize(), and walk_tree_without_duplicates().
| htab_t htab_create_alloc | ( | size_t | size, | |
| htab_hash | hash_f, | |||
| htab_eq | eq_f, | |||
| htab_del | del_f, | |||
| htab_alloc | alloc_f, | |||
| htab_free | free_f | |||
| ) |
Definition at line 303 of file hashtab.c.
Referenced by _cpp_init_files(), htab_create(), htab_try_create(), init_predicate_table(), and main().
| htab_t htab_create_alloc_ex | ( | size_t | size, | |
| htab_hash | hash_f, | |||
| htab_eq | eq_f, | |||
| htab_del | del_f, | |||
| PTR | alloc_arg, | |||
| htab_alloc_with_arg | alloc_f, | |||
| htab_free_with_arg | free_f | |||
| ) |
Definition at line 341 of file hashtab.c.
References higher_prime_index(), NULL, prime_ent::prime, PTR, and result.
Definition at line 425 of file hashtab.c.
Referenced by _cpp_cleanup_files(), assign_filter_values(), browse_tree(), cgraph_decide_inlining(), cgraph_node_remove_callees(), cgraph_remove_node(), conflict_graph_delete(), convert_to_eh_region_ranges(), create_name_tags(), create_structure_vars(), cselib_finish(), dataflow_set_destroy(), delete_alias_heapvars(), delete_points_to_sets(), delete_tree_ssa(), delete_update_ssa(), detect_field_duplicates(), elfNN_ia64_hash_table_free(), end_recording_case_labels(), finalize_nrv(), find_referenced_vars(), fini_pre(), fini_reassoc(), finish_automata_lists(), finish_automaton_decl_table(), finish_bundle_state_table(), finish_decl_table(), finish_insn_decl_table(), finish_states(), fold_build1_stat(), fold_build2_stat(), fold_build3_stat(), for_each_template_parm(), free_ldst_mems(), free_mem(), free_nesting_tree(), free_opt_info(), free_original_copy_tables(), gather_mem_refs(), gt_pch_save(), htab_del_bucket(), instantiate_decl(), instantiate_parameters(), iv_analysis_done(), lower_eh_constructs(), merge_identical_invariants(), mips_elf_merge_gots(), move_sese_region_to_fn(), optimize_inline_calls(), perfect_nestify(), pop_gimplify_context(), read_counts_file(), rename_variables(), resolve_mixers(), rewrite_blocks(), rewrite_ssa_into_ssa(), rtl_seqabstr(), scev_finalize(), see_free_data_structures(), see_free_ref_s(), sjlj_assign_call_site_values(), ssa_rename_from_free(), store_motion(), thread_block(), tree_duplicate_sese_region(), tree_lower_complex(), tree_sra(), tree_ssa_dominator_optimize(), tree_ssa_iv_optimize_finalize(), tree_ssa_uncprop(), verify_stmt_tree(), verify_stmts(), vn_delete(), vt_finalize(), and walk_tree_without_duplicates().
Definition at line 452 of file hashtab.c.
Referenced by clear_iv_info(), clear_table(), cselib_clear_table(), find_exception_handler_labels(), fold_build1_stat(), fold_build2_stat(), fold_build3_stat(), free_loop_data(), scev_reset(), tree_ssa_dominator_optimize(), update_ssa(), and vars_clear().
| static int htab_expand | ( | htab_t | htab | ) | [static] |
Definition at line 513 of file hashtab.c.
References DELETED_ENTRY, EMPTY_ENTRY, find_empty_slot_for_expand(), higher_prime_index(), htab_elements, NULL, p, prime_ent::prime, PTR, q, and x.
Referenced by htab_find_slot_with_hash(), and htab_traverse().
Definition at line 619 of file hashtab.c.
References htab_find_with_hash().
Referenced by _bfd_mips_elf_finish_dynamic_symbol(), _bfd_mips_elf_hide_symbol(), _frvfdpic_resolve_final_relocs_info(), apply_macro_to_string(), apply_opt_in_copies(), cgraph_flatten_node(), check_goto(), compute_rtx_cost(), conflict_graph_conflict_p(), convert_nl_goto_receiver(), count_defs(), define_label(), fill_hash_bucket(), find_automaton_decl(), find_decl(), find_def_blocks_for(), find_insn_decl(), find_macro(), find_mode(), find_pool_constant(), fixup_var_refs_insns_with_hash(), get_bb_copy(), get_bb_original(), get_coverage_counts(), get_id_for_tree(), get_instantiated_value(), get_rtx_ptr_loc(), insns_for_mem_walk(), lang_register_vers_node(), lang_vers_match(), lookup_id_for_tree(), lookup_predicate(), lookup_stmt_eh_region(), lookup_stmt_eh_region_fn(), map_attr_string(), maybe_eval_c_test(), mf_marked_p(), mips_elf_create_local_got_entry(), mips_elf_global_got_index(), mips_elf_got_for_ibfd(), mips_elf_resolve_final_got_entry(), outside_finally_tree(), print_c_condition(), read_name(), retrieve_local_specialization(), TB_up_expr(), verify_stmt_tree_r(), and write_defs().
| PTR* htab_find_slot | ( | htab_t | htab, | |
| const PTR | element, | |||
| enum insert_option | insert | |||
| ) |
Definition at line 706 of file hashtab.c.
References htab_find_slot_with_hash().
Referenced by _frvfdpic_resolve_final_relocs_info(), add_action_record(), add_c_test(), add_condition(), add_ehl_entry(), add_ehspec_entry(), add_mapping(), add_predicate(), add_referenced_var(), add_stmt_to_eh_region(), add_stmt_to_eh_region_fn(), add_to_repl_tbl(), analyze_insns_in_loop(), automata_list_finish(), build_int_cst_wide(), cgraph_find_cycles(), cgraph_insert_node_to_hashtable(), cgraph_node(), cgraph_remove_node(), cgraph_varpool_node(), conflict_graph_add(), convert_nl_goto_reference(), create_name_tags(), DEFUN(), detect_field_duplicates(), dom_opt_finalize_block(), fill_hash_bucket(), finalize_nrv_r(), find_operand_rank(), find_rtx_in_ldst(), find_var_scev_info(), for_each_template_parm_r(), force_const_mem(), frvfdpic_relocs_info_find(), get_cases_for_edge(), get_def_blocks_for(), get_mem_attrs(), get_reg_attrs(), GTY(), htab_remove_elt(), i386_pe_section_type_flags(), init_md_reader(), init_md_reader_args_cb(), insert_automaton_decl(), insert_bundle_state(), insert_decl(), insert_id_for_tree(), insert_insn_decl(), insert_operand_rank(), insert_state(), insns_for_mem_walk(), join_c_conditions(), lang_finalize_version_expr_head(), lookup_const_double(), lookup_element(), lookup_field_for_decl(), lookup_redirection_data(), lookup_tmp_var(), lookup_tramp_for_decl(), make_label_decl(), maybe_remove_eh_handler(), mips_elf_create_local_got_entry(), mips_elf_make_got_per_bfd(), mips_elf_multi_got(), mips_elf_record_global_got_symbol(), mips_elf_record_local_got_symbol(), mips_elf_resolve_final_got_entry(), multiply_by_cost(), names_replaced_by(), new_mode(), output_toc(), pop_local_label(), read_constants(), read_counts_file(), record_equiv(), record_in_finally_tree(), record_range(), record_switch_edge(), register_local_specialization(), remove_equivalence(), remove_exception_handler_label(), remove_stmt_from_eh_region(), remove_stmt_from_eh_region_fn(), save_idents(), see_analyze_merged_def_local_prop(), see_analyze_unmerged_def_local_prop(), see_analyze_use_local_prop(), see_merge_one_def_extension(), see_seek_pre_extension_expr(), see_set_prop_merged_def(), see_set_prop_unmerged_def(), see_set_prop_unmerged_use(), see_store_reference_and_extension(), set_bb_copy(), set_bb_original(), set_instantiated_value(), set_rtx_ptr_loc(), simplify_cond_and_lookup_avail_expr(), uncprop_into_successor_phis(), used_types_insert_helper(), verify_node_sharing(), verify_stmt_tree_r(), and walk_tree().
| PTR* htab_find_slot_with_hash | ( | htab_t | htab, | |
| const PTR | element, | |||
| hashval_t | hash, | |||
| enum insert_option | insert | |||
| ) |
Definition at line 635 of file hashtab.c.
References DELETED_ENTRY, EMPTY_ENTRY, htab_expand(), htab_mod(), htab_mod_m2(), htab_size, index(), INSERT, NO_INSERT, NULL, PTR, and size.
Referenced by _cpp_find_file(), add_ttypes_entry(), add_type_for_runtime(), allocate_ssa_names(), cgraph_create_edge(), cgraph_edge(), cgraph_set_call_stmt(), clobber_variable_part(), cselib_lookup(), cselib_lookup_mem(), cvc_insert(), decl_debug_expr_insert(), decl_init_priority_insert(), decl_restrict_base_insert(), decl_shadowed_for_var_insert(), decl_value_expr_insert(), DEFUN(), delete_variable_part(), demangled_hash_lookup(), file_hash_lookup(), find_or_insert_inv(), force_const_mem(), gather_mem_refs_stmt(), gen_rtx_CONST_INT(), get_block_for_section(), get_local_sym_hash(), get_named_section_flags(), get_section(), gt_pch_note_object(), GTY(), hash_tree_cons(), heapvar_insert(), htab_find_slot(), htab_remove_elt_with_hash(), insert_expr_in_table(), ldst_entry(), lookup_avail_expr(), lookup_expr_in_table(), lookup_type_for_runtime(), machopic_indirection_name(), make_cpp_dir(), mangle_conv_op_name_for_type(), mark_constant(), named_section_first_declaration(), new_label_mapper(), niter_for_exit(), output_constant_def(), phi_trans_add(), phi_trans_lookup(), pushdecl_maybe_friend(), record_biv(), record_cond(), referenced_var_check_and_insert(), register_local_specialization(), replace_uses_equiv_to_x_with_y(), set_default_def(), set_named_section_flags(), set_variable_part(), ssa_rename_from_insert(), symbol_hash_lookup(), type_hash_add(), unshare_variable(), up_insert(), variable_union(), variable_was_changed(), vars_copy_1(), vn_add(), vn_add_with_vuses(), vn_lookup(), and vn_lookup_with_vuses().
Definition at line 582 of file hashtab.c.
References DELETED_ENTRY, EMPTY_ENTRY, htab_mod(), htab_mod_m2(), htab_size, index(), PTR, and size.
Referenced by analyzed_for_bivness_p(), cgraph_edge(), cp_genericize_r(), cpp_included(), dataflow_set_different_1(), dataflow_set_different_2(), decl_debug_expr_lookup(), decl_init_priority_lookup(), decl_restrict_base_lookup(), decl_value_expr_lookup(), default_def(), DEFUN(), emit_notes_for_differences_1(), emit_notes_for_differences_2(), gt_pch_note_reorder(), GTY(), heapvar_lookup(), htab_find(), lookup_constant_def(), machopic_validate_stub_or_non_lazy_ptr(), move_stmt_r(), referenced_var_check_and_insert(), referenced_var_lookup(), relocate_ptrs(), replace_uses_equiv_to_x_with_y(), retrieve_local_specialization(), rewrite_to_new_ssa_names_def(), rewrite_to_new_ssa_names_use(), set_frame_base_location(), ssa_rename_from_lookup(), type_hash_lookup(), up_lookup(), VEC(), and write_pch_globals().
Definition at line 853 of file hashtab.c.
Referenced by _cpp_find_file(), const_desc_rtx_sym_hash(), const_rtx_hash_1(), cpp_included(), DEFUN(), demangled_hash_lookup(), file_hash_hash(), file_hash_lookup(), get_named_section_flags(), get_section(), GTY(), hash_mode(), hash_section(), hash_string_hash(), hash_struct_pred_data(), in_named_entry_hash(), machopic_indirection_name(), machopic_validate_stub_or_non_lazy_ptr(), make_cpp_dir(), named_section_first_declaration(), section_entry_hash(), set_named_section_flags(), symbol_hash_lookup(), and version_expr_head_hash().
Definition at line 278 of file hashtab.c.
References htab_mod_1(), prime_ent::inv, p, prime_ent::prime, and prime_ent::shift.
Referenced by find_empty_slot_for_expand(), htab_find_slot_with_hash(), and htab_find_with_hash().
Definition at line 248 of file hashtab.c.
References __extension__, CHAR_BIT, q, r, t1, t2, t3, and t4.
Referenced by htab_mod(), and htab_mod_m2().
Definition at line 289 of file hashtab.c.
References htab_mod_1(), prime_ent::inv_m2, p, prime_ent::prime, and prime_ent::shift.
Referenced by find_empty_slot_for_expand(), htab_find_slot_with_hash(), and htab_find_with_hash().
Definition at line 720 of file hashtab.c.
References htab_remove_elt_with_hash().
Referenced by set_default_def().
Definition at line 733 of file hashtab.c.
References DELETED_ENTRY, EMPTY_ENTRY, htab_find_slot_with_hash(), NO_INSERT, and PTR.
Referenced by cgraph_edge_remove_caller(), cgraph_set_call_stmt(), compute_store_table(), htab_remove_elt(), remove_local_expressions_from_table(), trim_ld_motion_mems(), and update_rhs_and_lookup_avail_expr().
| void htab_set_functions_ex | ( | htab_t | htab, | |
| htab_hash | hash_f, | |||
| htab_eq | eq_f, | |||
| htab_del | del_f, | |||
| PTR | alloc_arg, | |||
| htab_alloc_with_arg | alloc_f, | |||
| htab_free_with_arg | free_f | |||
| ) |
Definition at line 803 of file hashtab.c.
References htab_elements, htab_expand(), htab_size, and htab_traverse_noresize().
Referenced by _bfd_mips_elf_always_size_sections(), _bfd_mips_elf_size_dynamic_sections(), _cpp_report_missing_guards(), _frvfdpic_size_got_plt(), apply_opt_in_copies(), cselib_invalidate_mem(), dataflow_set_different(), dataflow_set_union(), debug_def_blocks(), delete_redundant_insns(), dump_alloc_pool_statistics(), dump_ggc_loc_statistics(), dump_hash_table(), dump_varray_statistics(), dump_vars(), elf32_frvfdpic_relax_section(), elf32_frvfdpic_size_dynamic_sections(), elfNN_ia64_dyn_sym_traverse(), emit_notes_for_changes(), emit_notes_for_differences(), for_each_eh_label(), free_opt_info(), gather_stats_on_scev_database(), ggc_mark_roots(), gt_pch_save(), mips_elf_merge_gots(), mips_elf_multi_got(), mips_elf_resolve_final_got_entries(), output_object_blocks(), pop_labels(), poplevel(), read_rtx(), remove_useless_values(), see_analyze_ref_local_prop(), see_commit_changes(), see_commit_ref_changes(), see_handle_extensions_for_one_ref(), see_main(), ssa_rename_from_print(), ssa_rename_from_traverse(), thread_block(), toc_hash_mark_table(), traverse_c_tests(), traverse_md_constants(), vars_copy(), and write_conditions().
Definition at line 777 of file hashtab.c.
References DELETED_ENTRY, EMPTY_ENTRY, htab_size, PTR, and x.
Referenced by ggc_mark_roots(), htab_traverse(), machopic_finish(), see_analyze_ref_local_prop(), see_commit_ref_changes(), and see_handle_extensions_for_one_ref().
Definition at line 412 of file hashtab.c.
Referenced by _frv_create_got_section(), elfNN_ia64_hash_table_create(), mips_elf_create_got_section(), mips_elf_make_got_per_bfd(), and mips_elf_multi_got().
| static int htab_expand PARAMS | ( | (htab_t) | ) | [static] |
| static unsigned int higher_prime_index PARAMS | ( | (unsigned long) | ) | [static] |
| htab_eq htab_eq_pointer = eq_pointer |
| htab_hash htab_hash_pointer = hash_pointer |
1.5.6