
Go to the source code of this file.
Data Types | |
| type | simple_bitmap_def |
Defines | |
| #define | SBITMAP_ELT_BITS ((unsigned) HOST_BITS_PER_WIDE_INT) |
| #define | SBITMAP_ELT_TYPE unsigned HOST_WIDE_INT |
| #define | SBITMAP_SET_SIZE(N) (((N) + SBITMAP_ELT_BITS - 1) / SBITMAP_ELT_BITS) |
| #define | SET_BIT(BITMAP, BITNO) |
| #define | TEST_BIT(BITMAP, BITNO) ((BITMAP)->elms [(BITNO) / SBITMAP_ELT_BITS] >> (BITNO) % SBITMAP_ELT_BITS & 1) |
| #define | RESET_BIT(BITMAP, BITNO) |
| #define | EXECUTE_IF_SET_IN_SBITMAP(SBITMAP, MIN, N, CODE) |
| #define | EXECUTE_IF_SET_IN_SBITMAP_REV(SBITMAP, N, CODE) |
| #define | sbitmap_free(MAP) free(MAP) |
| #define | sbitmap_vector_free(VEC) free(VEC) |
| #define | sbitmap_intersect_of_predecessors sbitmap_intersect_of_predsucc |
| #define | sbitmap_intersect_of_successors sbitmap_intersect_of_predsucc |
| #define | sbitmap_union_of_predecessors sbitmap_union_of_predsucc |
| #define | sbitmap_union_of_successors sbitmap_union_of_predsucc |
Typedefs | |
| typedef struct simple_bitmap_def * | sbitmap |
| typedef SBITMAP_ELT_TYPE * | sbitmap_ptr |
Functions/Subroutines | |
| void dump_sbitmap | PARAMS ((FILE *, sbitmap)) |
| void dump_sbitmap_vector | PARAMS ((FILE *, const char *, const char *, sbitmap *, int)) |
| sbitmap sbitmap_alloc | PARAMS ((unsigned int)) |
| sbitmap *sbitmap_vector_alloc | PARAMS ((unsigned int, unsigned int)) |
| sbitmap sbitmap_resize | PARAMS ((sbitmap, unsigned int, int)) |
| void sbitmap_copy | PARAMS ((sbitmap, sbitmap)) |
| void sbitmap_zero | PARAMS ((sbitmap)) |
| void sbitmap_vector_zero | PARAMS ((sbitmap *, unsigned int)) |
| void sbitmap_union_of_diff | PARAMS ((sbitmap, sbitmap, sbitmap, sbitmap)) |
| void sbitmap_difference | PARAMS ((sbitmap, sbitmap, sbitmap)) |
| void sbitmap_intersect_of_predsucc | PARAMS ((sbitmap, sbitmap *, int, struct int_list **)) |
| void sbitmap_intersection_of_succs | PARAMS ((sbitmap, sbitmap *, int)) |
| #define EXECUTE_IF_SET_IN_SBITMAP | ( | SBITMAP, | |||
| MIN, | |||||
| N, | |||||
| CODE | ) |
Value:
do { \ unsigned int word_num_; \ unsigned int bit_num_ = (MIN) % (unsigned int) SBITMAP_ELT_BITS; \ unsigned int size_ = (SBITMAP)->size; \ SBITMAP_ELT_TYPE *ptr_ = (SBITMAP)->elms; \ \ for (word_num_ = (MIN) / (unsigned int) SBITMAP_ELT_BITS; \ word_num_ < size_; word_num_++, bit_num_ = 0) \ { \ SBITMAP_ELT_TYPE word_ = ptr_[word_num_]; \ \ if (word_ != 0) \ for (; bit_num_ < SBITMAP_ELT_BITS; bit_num_++) \ { \ SBITMAP_ELT_TYPE _mask = (SBITMAP_ELT_TYPE) 1 << bit_num_; \ \ if ((word_ & _mask) != 0) \ { \ word_ &= ~ _mask; \ (N) = word_num_ * SBITMAP_ELT_BITS + bit_num_; \ CODE; \ if (word_ == 0) \ break; \ } \ } \ } \ } while (0)
Definition at line 59 of file sbitmap.h.
Referenced by calculate_global_regs_live(), check_hard_regs_in_partition(), clear_log_links(), coalesce_ssa_name(), combine_instructions(), compact_var_map(), compute_dominance_frontiers_1(), compute_flow_insensitive_aliasing(), compute_iterated_dominance_frontiers(), count_or_remove_death_notes(), create_scc(), create_ssa_var_map(), dump_update_ssa(), ephi_backward(), ephi_create(), ephi_forward(), find_nodes_on_paths(), find_predecessors(), find_successors(), flow_nodes_print(), group_aliases_into(), insert_phi_nodes(), link_btr_uses(), longest_simple_path(), prepare_names_to_update(), sbitmap_first_set_bit(), spill_propagation(), ssa_names_to_replace(), switch_virtuals_to_full_rewrite(), update_life_info(), and update_ssa().
| #define EXECUTE_IF_SET_IN_SBITMAP_REV | ( | SBITMAP, | |||
| N, | |||||
| CODE | ) |
Value:
do { \ unsigned int word_num_; \ unsigned int bit_num_; \ unsigned int size_ = (SBITMAP)->size; \ SBITMAP_ELT_TYPE *ptr_ = (SBITMAP)->elms; \ \ for (word_num_ = size_; word_num_ > 0; word_num_--) \ { \ SBITMAP_ELT_TYPE word_ = ptr_[word_num_ - 1]; \ \ if (word_ != 0) \ for (bit_num_ = SBITMAP_ELT_BITS; bit_num_ > 0; bit_num_--) \ { \ SBITMAP_ELT_TYPE _mask = (SBITMAP_ELT_TYPE)1 << (bit_num_ - 1);\ \ if ((word_ & _mask) != 0) \ { \ word_ &= ~ _mask; \ (N) = (word_num_ - 1) * SBITMAP_ELT_BITS + bit_num_ - 1;\ CODE; \ if (word_ == 0) \ break; \ } \ } \ } \ } while (0)
| #define RESET_BIT | ( | BITMAP, | |||
| BITNO | ) |
Value:
((BITMAP)->elms [(BITNO) / SBITMAP_ELT_BITS] \ &= ~((SBITMAP_ELT_TYPE) 1 << (BITNO) % SBITMAP_ELT_BITS))
Definition at line 54 of file sbitmap.h.
Referenced by add_dependence(), break_precolored_alias(), cfg_blocks_get(), compute_iterated_dominance_frontiers(), compute_transp(), compute_transpout(), df_hybrid_search_backward(), df_hybrid_search_forward(), emit_loads(), find_conditional_asserts(), fix_bb_placements(), fix_irreducible_loops(), flow_loops_find(), follow_def_use_chains(), hybrid_search(), hybrid_search_bitmap(), hybrid_search_sbitmap(), insert_store(), invalidate_nonnull_info(), peel_loop_completely(), prepare_names_to_update(), process_unification_queue(), remove_dependence(), restore_conflicts_from_coalesce(), rewrite_program2(), scc_visit(), schedule_ebbs(), see_analyze_merged_def_local_prop(), see_analyze_unmerged_def_local_prop(), see_analyze_use_local_prop(), solve_graph(), spill_propagation(), ssa_fast_dce(), switch_virtuals_to_full_rewrite(), try_unroll_loop_completely(), unroll_loop_constant_iterations(), unroll_loop_runtime_iterations(), verify_loop_structure(), and vt_find_locations().
| #define SBITMAP_ELT_BITS ((unsigned) HOST_BITS_PER_WIDE_INT) |
Definition at line 28 of file sbitmap.h.
Referenced by dump_sbitmap(), get_bitmap_width(), pre_edge_insert(), sbitmap_iter_cond(), sbitmap_iter_init(), sbitmap_last_set_bit(), sbitmap_not(), sbitmap_ones(), sbitmap_resize(), and see_pre_insert_extensions().
| #define SBITMAP_ELT_TYPE unsigned HOST_WIDE_INT |
Definition at line 29 of file sbitmap.h.
Referenced by dump_sbitmap(), gcse_main(), get_bitmap_width(), is_too_expensive(), pre_edge_insert(), sbitmap_a_and_b_cg(), sbitmap_a_and_b_or_c_cg(), sbitmap_a_or_b_and_c_cg(), sbitmap_a_or_b_cg(), sbitmap_a_xor_b_cg(), sbitmap_alloc(), sbitmap_copy(), sbitmap_equal(), sbitmap_last_set_bit(), sbitmap_not(), sbitmap_ones(), sbitmap_realloc(), sbitmap_resize(), sbitmap_union_of_diff_cg(), sbitmap_vector_alloc(), and see_pre_insert_extensions().
Definition at line 116 of file sbitmap.h.
Referenced by actual_spill(), blocks_in_phiopt_order(), calculate_reg_pav(), ccp_initialize(), check_hard_regs_in_partition(), coalesce_ssa_name(), combine_instructions(), commit_edge_insertions(), commit_edge_insertions_watch_calls(), compact_var_map(), compute_antic(), compute_dominance_frontiers(), compute_earliest(), compute_farthest(), compute_iterated_dominance_frontiers(), compute_out(), compute_pre_data(), copyprop_hardreg_forward(), create_ddg_all_sccs(), create_ssa_var_map(), delete_alias_info(), delete_elim_graph(), delete_update_ssa(), detect_web_parts_to_rebuild(), df_iterative_dataflow(), dump_copy_of(), eh_region_outermost(), eliminate_phi(), expand_call(), find_nodes_on_paths(), flow_depth_first_order_compute(), flow_dfs_compute_reverse_finish(), flow_loops_find(), flow_preorder_transversal_compute(), flow_reverse_top_sort_order_compute(), free_ddg(), free_scc(), free_scc_info(), free_topo_info(), insert_range_assertions(), iterative_dataflow(), iterative_dataflow_bitmap(), iterative_dataflow_sbitmap(), link_btr_uses(), longest_simple_path(), mark_dfs_back_edges(), post_order_compute(), pre_and_rev_post_order_compute(), pre_gcse(), purge_all_dead_edges(), ra_build_free(), ra_build_free_all(), ra_build_realloc(), reachable_at_most_once(), reg_alloc(), remove_range_assertions(), remove_reachable_equiv_notes(), rewrite_into_ssa(), rewrite_ssa_into_ssa(), root_var_init(), schedule_ebbs(), single_reachable_address(), solve_graph(), spill_coalprop(), spill_propagation(), split_all_insns(), ssa_const_prop(), ssa_fast_dce(), ssa_prop_fini(), tree_dce_done(), tree_expand_cfg(), tree_ssa_lim_initialize(), type_var_init(), unswitch_loop(), update_life_info_in_dirty_blocks(), update_ssa(), and vt_find_locations().
| #define sbitmap_intersect_of_predecessors sbitmap_intersect_of_predsucc |
| #define sbitmap_intersect_of_successors sbitmap_intersect_of_predsucc |
| #define SBITMAP_SET_SIZE | ( | N | ) | (((N) + SBITMAP_ELT_BITS - 1) / SBITMAP_ELT_BITS) |
Definition at line 42 of file sbitmap.h.
Referenced by gcse_main(), get_bitmap_width(), is_too_expensive(), sbitmap_alloc(), sbitmap_realloc(), sbitmap_resize(), and sbitmap_vector_alloc().
| #define sbitmap_union_of_predecessors sbitmap_union_of_predsucc |
| #define sbitmap_union_of_successors sbitmap_union_of_predsucc |
| #define sbitmap_vector_free | ( | VEC | ) | free(VEC) |
Definition at line 117 of file sbitmap.h.
Referenced by build_btr_def_use_webs(), compute_pre_data(), convert_to_ssa(), delete_null_pointer_checks(), eliminate_phi(), free_avail_expr_mem(), free_code_hoist_mem(), free_cprop_mem(), free_dependency_caches(), free_gcse_mem(), free_pre_mem(), free_rd_mem(), free_store_memory(), make_edges(), pre_edge_insert(), pre_edge_lcm(), pre_edge_rev_lcm(), see_free_data_structures(), and store_motion().
| #define SET_BIT | ( | BITMAP, | |||
| BITNO | ) |
Value:
((BITMAP)->elms [(BITNO) / SBITMAP_ELT_BITS] \ |= (SBITMAP_ELT_TYPE) 1 << (BITNO) % SBITMAP_ELT_BITS)
| #define TEST_BIT | ( | BITMAP, | |||
| BITNO | ) | ((BITMAP)->elms [(BITNO) / SBITMAP_ELT_BITS] >> (BITNO) % SBITMAP_ELT_BITS & 1) |
| typedef struct simple_bitmap_def * sbitmap |
| typedef SBITMAP_ELT_TYPE* sbitmap_ptr |
| sbitmap* sbitmap_vector_alloc PARAMS | ( | (unsigned int, unsigned int) | ) |
| sbitmap sbitmap_alloc PARAMS | ( | (unsigned int) | ) |
1.5.6