#include "hconfig.h"#include "system.h"#include "rtl.h"#include "obstack.h"#include "errors.h"#include <math.h>#include "hashtab.h"#include "varray.h"#include "genattrtab.h"

Go to the source code of this file.
| #define ADVANCE_CYCLE_VALUE_NAME "DFA__ADVANCE_CYCLE" |
Definition at line 6957 of file genautomata.c.
Referenced by output_internal_insn_code_evaluation(), output_internal_insn_latency_func(), output_min_issue_delay_func(), output_print_reservation_func(), and output_tables().
| #define AUTOMATON_STATE_ALTS_MACRO_NAME "AUTOMATON_STATE_ALTS" |
| #define BYPASS_P_FUNC_NAME "bypass_p" |
| #define CHAR_BIT 8 |
Definition at line 114 of file genautomata.c.
| #define CHIP_NAME "DFA_chip" |
Definition at line 6927 of file genautomata.c.
Referenced by output_chip_definitions(), output_cpu_unit_reservation_p(), output_internal_dead_lock_func(), output_internal_min_issue_delay_func(), output_internal_reset_func(), output_internal_state_alts_func(), output_internal_trans_func(), output_min_insn_conflict_delay_func(), and output_size_func().
| #define CHIP_PARAMETER_NAME "chip" |
Definition at line 7179 of file genautomata.c.
Referenced by output_automata_list_min_issue_delay_code(), output_automata_list_state_alts_code(), output_automata_list_transition_code(), output_internal_dead_lock_func(), output_internal_min_issue_delay_func(), output_internal_reset_func(), output_internal_state_alts_func(), and output_internal_trans_func().
| #define CMP_VARIABLE_NAME "cmp" |
| #define CODE_MEMBER_NAME "code" |
| #define CPU_CODE_PARAMETER_NAME "cpu_unit_code" |
| #define CPU_UNIT_NAME_PARAMETER_NAME "cpu_unit_name" |
| #define CPU_UNIT_RESERVATION_P_FUNC_NAME "cpu_unit_reservation_p" |
| #define CPU_UNITS_QUERY_MACRO_NAME "CPU_UNITS_QUERY" |
Definition at line 7121 of file genautomata.c.
Referenced by output_reserved_units_table(), output_tables(), and write_automata().
| #define DEAD_LOCK_FUNC_NAME "state_dead_lock_p" |
| #define DECL_ABSENCE | ( | d | ) | (&(d)->decl.absence) |
Definition at line 1441 of file genautomata.c.
Referenced by gen_absence_set(), gen_presence_absence_set(), and process_decls().
| #define DECL_AUTOMATON | ( | d | ) | (&(d)->decl.automaton) |
Definition at line 1438 of file genautomata.c.
Referenced by automaton_decl_eq_p(), automaton_decl_hash(), check_automaton_usage(), create_automata(), find_automaton_decl(), gen_automaton(), and process_decls().
| #define DECL_BYPASS | ( | d | ) | (&(d)->decl.bypass) |
Definition at line 1437 of file genautomata.c.
Referenced by gen_bypass(), output_description(), output_max_insn_queue_index_def(), and process_decls().
| #define DECL_INSN_RESERV | ( | d | ) | (&(d)->decl.insn_reserv) |
Definition at line 1443 of file genautomata.c.
Referenced by add_advance_cycle_insn_decl(), check_unit_distributions_to_automata(), create_ainsns(), create_alt_states(), evaluate_max_reserv_cycles(), find_insn_decl(), form_ainsn_with_same_reservs(), form_arcs_marked_by_insn(), form_important_insn_automata_lists(), form_the_same_automaton_unit_lists(), gen_insn_reserv(), insn_decl_eq_p(), insn_decl_hash(), longest_path_length(), make_automaton(), make_bypass_attr(), make_default_insn_latency_attr(), make_insn_alts_attr(), make_internal_dfa_insn_code_attr(), min_issue_delay_pass_states(), NDFA_to_DFA(), output_dead_lock_vect(), output_description(), output_insn_code_cases(), output_internal_insn_latency_func(), output_max_insn_queue_index_def(), output_print_reservation_func(), output_tables(), process_decls(), process_regexp_decls(), set_new_cycle_flags(), and transform_insn_regexps().
| #define DECL_PRESENCE | ( | d | ) | (&(d)->decl.presence) |
Definition at line 1440 of file genautomata.c.
Referenced by gen_presence_absence_set(), gen_presence_set(), and process_decls().
| #define DECL_RESERV | ( | d | ) | (&(d)->decl.reserv) |
Definition at line 1442 of file genautomata.c.
Referenced by check_loops_in_regexps(), check_usage(), decl_eq_p(), decl_hash(), gen_reserv(), loop_in_regexp(), output_description(), process_decls(), process_regexp(), and process_regexp_decls().
Definition at line 1436 of file genautomata.c.
Referenced by check_unit_distributions_to_automata(), check_usage(), compare_max_occ_cycle_nums(), decl_eq_p(), decl_hash(), estimate_one_automaton_bound(), expand_automata(), find_decl(), form_the_same_automaton_unit_lists(), gen_cpu_unit(), gen_query_cpu_unit(), initiate_excl_sets(), initiate_presence_absence_pattern_sets(), initiate_presence_absence_sets(), initiate_states(), output_automaton_units(), output_description(), process_decls(), process_excls(), process_presence_absence(), process_presence_absence_names(), process_presence_absence_patterns(), process_regexp(), units_to_automata_distr(), and units_to_automata_heuristic_distr().
| #define DFA_FINISH_FUNC_NAME "dfa_finish" |
| #define DFA_INSN_CODE_FUNC_NAME "dfa_insn_code" |
Definition at line 7211 of file genautomata.c.
Referenced by output_dfa_insn_code_func(), output_internal_insn_code_evaluation(), output_min_issue_delay_func(), and output_print_reservation_func().
| #define DFA_INSN_CODES_LENGTH_VARIABLE_NAME "dfa_insn_codes_length" |
Definition at line 7143 of file genautomata.c.
Referenced by output_dfa_clean_insn_cache_func(), output_dfa_insn_code_func(), output_dfa_start_func(), and write_automata().
| #define DFA_INSN_CODES_VARIABLE_NAME "dfa_insn_codes" |
Definition at line 7140 of file genautomata.c.
Referenced by output_dfa_clean_insn_cache_func(), output_dfa_finish_func(), output_dfa_insn_code_func(), output_dfa_start_func(), and write_automata().
| #define DFA_START_FUNC_NAME "dfa_start" |
| #define FILE_PARAMETER_NAME "f" |
| #define GET_CPU_UNIT_CODE_FUNC_NAME "get_cpu_unit_code" |
| #define HIGH_VARIABLE_NAME "h" |
| #define I_VARIABLE_NAME "i" |
Definition at line 7196 of file genautomata.c.
Referenced by output_dfa_clean_insn_cache_func(), and output_dfa_start_func().
| #define INSN2_PARAMETER_NAME "insn2" |
Definition at line 7177 of file genautomata.c.
Referenced by output_insn_latency_func(), output_internal_insn_latency_func(), and output_min_insn_conflict_delay_func().
| #define INSN_ALTS_FUNC_NAME "insn_alts" |
| #define INSN_DEFAULT_LATENCY_FUNC_NAME "insn_default_latency" |
| #define INSN_LATENCY_FUNC_NAME "insn_latency" |
| #define INSN_PARAMETER_NAME "insn" |
Definition at line 7175 of file genautomata.c.
Referenced by output_dfa_clean_insn_cache_func(), output_dfa_insn_code_func(), output_insn_latency_func(), output_internal_insn_latency_func(), output_min_insn_conflict_delay_func(), output_min_issue_delay_func(), output_print_reservation_func(), output_state_alts_func(), and output_trans_func().
| #define INTERNAL_DEAD_LOCK_FUNC_NAME "internal_state_dead_lock_p" |
Definition at line 7135 of file genautomata.c.
Referenced by output_dead_lock_func(), and output_internal_dead_lock_func().
| #define INTERNAL_DFA_INSN_CODE_FUNC_NAME "internal_dfa_insn_code" |
Definition at line 7207 of file genautomata.c.
Referenced by make_internal_dfa_insn_code_attr(), and output_dfa_insn_code_func().
| #define INTERNAL_INSN2_CODE_NAME "insn2_code" |
Definition at line 7191 of file genautomata.c.
Referenced by output_insn_latency_func(), output_internal_insn_latency_func(), and output_min_insn_conflict_delay_func().
| #define INTERNAL_INSN_CODE_NAME "insn_code" |
Definition at line 7189 of file genautomata.c.
Referenced by output_automata_list_min_issue_delay_code(), output_automata_list_state_alts_code(), output_automata_list_transition_code(), output_dfa_insn_code_func(), output_insn_latency_func(), output_internal_insn_latency_func(), output_internal_min_issue_delay_func(), output_internal_state_alts_func(), output_internal_trans_func(), output_min_insn_conflict_delay_func(), output_min_issue_delay_func(), output_print_reservation_func(), output_state_alts_func(), and output_trans_func().
| #define INTERNAL_INSN_LATENCY_FUNC_NAME "internal_insn_latency" |
Definition at line 7137 of file genautomata.c.
Referenced by output_insn_latency_func(), and output_internal_insn_latency_func().
| #define INTERNAL_MIN_ISSUE_DELAY_FUNC_NAME "internal_min_issue_delay" |
Definition at line 7124 of file genautomata.c.
Referenced by output_automata_list_transition_code(), output_internal_min_issue_delay_func(), output_min_insn_conflict_delay_func(), and output_min_issue_delay_func().
| #define INTERNAL_RESET_FUNC_NAME "internal_reset" |
Definition at line 7133 of file genautomata.c.
Referenced by output_internal_reset_func(), output_min_insn_conflict_delay_func(), and output_reset_func().
| #define INTERNAL_STATE_ALTS_FUNC_NAME "internal_state_alts" |
Definition at line 7131 of file genautomata.c.
Referenced by output_internal_state_alts_func(), and output_state_alts_func().
| #define INTERNAL_TRANSITION_FUNC_NAME "internal_state_transition" |
Definition at line 7129 of file genautomata.c.
Referenced by output_internal_trans_func(), output_min_insn_conflict_delay_func(), and output_trans_func().
| #define LOW_VARIABLE_NAME "l" |
| #define MAX_DFA_ISSUE_RATE_VAR_NAME "max_dfa_issue_rate" |
| #define MAX_FLOATING_POINT_VALUE_FOR_AUTOMATON_BOUND 1.0E37 |
| #define MAX_LINE_LENGTH 70 |
Definition at line 8882 of file genautomata.c.
Referenced by output_automaton_units(), and output_state_arcs().
| #define MIDDLE_VARIABLE_NAME "m" |
| #define MIN_INSN_CONFLICT_DELAY_FUNC_NAME "min_insn_conflict_delay" |
| #define MIN_ISSUE_DELAY_FUNC_NAME "min_issue_delay" |
| #define NAME_CODE_STRUCT_NAME "name_code" |
| #define NAME_CODE_TABLE_NAME "name_code_table" |
| #define NAME_MEMBER_NAME "name" |
| #define NDFA_OPTION "-ndfa" |
Referenced by gen_automata_option(), and initiate_automaton_gen().
| #define NO_MINIMIZATION_OPTION "-no-minimization" |
Referenced by gen_automata_option(), and initiate_automaton_gen().
| #define NOTHING_NAME "nothing" |
Definition at line 1872 of file genautomata.c.
Referenced by form_regexp(), gen_regexp_el(), output_cycle_reservs(), output_print_reservation_func(), and process_decls().
| #define ON_THE_PATH -2 |
Definition at line 6812 of file genautomata.c.
Referenced by longest_path_length(), and output_dfa_max_issue_rate().
| #define PRINT_RESERVATION_FUNC_NAME "print_reservation" |
| #define REGEXP_ALLOF | ( | r | ) | (&(r)->regexp.allof) |
Definition at line 1449 of file genautomata.c.
Referenced by check_regexp_units_distribution(), copy_insn_regexp(), form_regexp(), form_the_same_automaton_unit_lists_from_regexp(), gen_regexp_allof(), loop_in_regexp(), process_regexp(), process_regexp_cycles(), process_seq_for_forming_states(), process_unit_to_form_the_same_automaton_unit_lists(), regexp_transform_func(), transform_2(), and transform_3().
| #define REGEXP_ONEOF | ( | r | ) | (&(r)->regexp.oneof) |
Definition at line 1450 of file genautomata.c.
Referenced by check_regexp_units_distribution(), copy_insn_regexp(), form_regexp(), form_the_same_automaton_unit_lists_from_regexp(), gen_regexp_oneof(), loop_in_regexp(), make_insn_alts_attr(), process_alts_for_forming_states(), process_regexp(), process_regexp_cycles(), process_unit_to_form_the_same_automaton_unit_lists(), regexp_transform_func(), store_alt_unit_usage(), transform_2(), transform_3(), and VEC().
| #define REGEXP_REPEAT | ( | r | ) | (&(r)->regexp.repeat) |
Definition at line 1448 of file genautomata.c.
Referenced by copy_insn_regexp(), form_regexp(), gen_regexp_repeat(), loop_in_regexp(), process_regexp(), process_regexp_cycles(), regexp_transform_func(), and transform_1().
| #define REGEXP_RESERV | ( | r | ) | (&(r)->regexp.reserv) |
Definition at line 1446 of file genautomata.c.
Referenced by copy_insn_regexp(), form_regexp(), loop_in_regexp(), process_regexp(), and process_regexp_cycles().
| #define REGEXP_SEQUENCE | ( | r | ) | (&(r)->regexp.sequence) |
Definition at line 1447 of file genautomata.c.
Referenced by check_regexp_units_distribution(), copy_insn_regexp(), form_regexp(), form_the_same_automaton_unit_lists_from_regexp(), gen_regexp_sequence(), loop_in_regexp(), process_regexp(), process_regexp_cycles(), process_seq_for_forming_states(), process_unit_to_form_the_same_automaton_unit_lists(), regexp_transform_func(), transform_1(), transform_2(), and transform_3().
| #define REGEXP_UNIT | ( | r | ) | (&(r)->regexp.unit) |
Definition at line 1445 of file genautomata.c.
Referenced by form_regexp(), gen_regexp_el(), process_regexp(), process_regexp_cycles(), process_seq_for_forming_states(), process_unit_to_form_the_same_automaton_unit_lists(), store_alt_unit_usage(), and VEC().
| #define RESET_FUNC_NAME "state_reset" |
| #define RESULT_VARIABLE_NAME "res" |
Definition at line 7199 of file genautomata.c.
Referenced by output_automata_list_min_issue_delay_code(), output_automata_list_state_alts_code(), output_internal_min_issue_delay_func(), and output_internal_state_alts_func().
| #define SET_BIT | ( | bitstring, | |||
| bitno | ) | (((char *) (bitstring)) [(bitno) / CHAR_BIT] |= 1 << (bitno) % CHAR_BIT) |
Definition at line 3551 of file genautomata.c.
Referenced by actual_spill(), add_conflict_edge(), add_dependence(), add_edge_to_ddg(), add_forward_dependence(), add_new_name_mapping(), break_superblocks(), build_store_vectors(), build_web_parts_and_conflicts(), cached_make_edge(), calculate_global_regs_live(), calculate_reg_pav(), ccp_initialize(), cfg_blocks_add(), check_sibcall_argument_overlap(), coalesce_ssa_name(), collect_points_to_info_for(), commit_edge_insertions(), commit_edge_insertions_watch_calls(), compact_var_map(), compute_ae_gen(), compute_ae_kill(), compute_antic(), compute_defs_uses_and_gen(), compute_dominance_frontiers_1(), compute_flow_insensitive_aliasing(), compute_local_properties(), compute_pre_data(), compute_store_table(), compute_transp(), copyprop_hardreg_forward(), create_ddg_all_sccs(), create_ssa_var_map(), defs_to_undefined(), defs_to_varying(), delete_null_pointer_checks_1(), detect_web_parts_to_rebuild(), df_hybrid_search_backward(), df_hybrid_search_forward(), df_iterative_dataflow(), distribute_notes(), do_da_constraint(), do_ds_constraint(), do_sd_constraint(), dump_copy_of(), eh_region_outermost(), elim_backward(), elim_forward(), eliminate_phi(), ephi_backward(), ephi_create(), ephi_forward(), examine_flow_edges(), find_assert_locations(), find_conditional_asserts(), find_evaluations_1(), find_nodes_on_paths(), fix_bb_placements(), fix_irreducible_loops(), flow_depth_first_order_compute(), flow_dfs_compute_reverse_add_bb(), flow_loops_find(), flow_preorder_transversal_compute(), flow_reverse_top_sort_order_compute(), form_reserv_sets_list(), get_address_cost(), handle_rd_kill_set(), hoist_code(), hybrid_search(), hybrid_search_bitmap(), hybrid_search_sbitmap(), initiate_excl_sets(), initiate_presence_absence_sets(), invalidate_nonnull_info(), iterative_dataflow(), iterative_dataflow_bitmap(), iterative_dataflow_sbitmap(), link_btr_uses(), longest_simple_path(), loopify(), make_edges(), mark_control_dependent_edges_necessary(), mark_def_sites(), mark_dfs_back_edges(), mark_operand_necessary(), mark_references(), mark_refs_for_checking(), maybe_queue_var(), multiplier_allowed_in_address_p(), post_order_compute(), pre_and_rev_post_order_compute(), pre_delete(), pre_edge_insert(), process_unification_queue(), propagate_necessity(), purge_all_dead_edges(), ra_build_realloc(), reachable_at_most_once(), record_canonical_element_1(), record_conflict(), record_last_reg_set_info(), reg_set_info(), remember_move(), remove_path(), remove_reachable_equiv_notes(), reset_conflicts(), rewrite_program2(), rewrite_ssa_into_ssa(), root_var_init(), scc_visit(), schedule_ebbs(), see_analyze_merged_def_local_prop(), see_analyze_unmerged_def_local_prop(), see_analyze_use_local_prop(), set_unit_reserv(), simulate_block(), single_reachable_address(), solve_graph(), spill_coalprop(), spill_prop_insert(), spill_propagation(), split_all_insns(), ssa_const_prop(), topo_visit(), tree_ssa_lim_initialize(), type_var_init(), unroll_loop_constant_iterations(), unroll_loop_runtime_iterations(), update_alias_info(), update_dist_to_successors(), update_life_info_in_dirty_blocks(), update_ssa(), verify_loop_structure(), visit_expression(), visit_phi_node(), and vt_find_locations().
| #define SIZE_FUNC_NAME "state_size" |
| #define STANDARD_OUTPUT_DESCRIPTION_FILE_SUFFIX ".dfa" |
| #define STATE_ALTS_FUNC_NAME "state_alts" |
| #define STATE_NAME "state" |
Definition at line 7173 of file genautomata.c.
Referenced by output_cpu_unit_reservation_p(), output_dead_lock_func(), output_min_insn_conflict_delay_func(), output_min_issue_delay_func(), output_reset_func(), output_state_alts_func(), and output_trans_func().
| #define STATE_TYPE_NAME "state_t" |
Definition at line 7127 of file genautomata.c.
Referenced by output_cpu_unit_reservation_p(), output_dead_lock_func(), output_min_insn_conflict_delay_func(), output_min_issue_delay_func(), output_reset_func(), output_state_alts_func(), and output_trans_func().
| #define TEMPORARY_VARIABLE_NAME "temp" |
Definition at line 7194 of file genautomata.c.
Referenced by output_automata_list_min_issue_delay_code(), output_automata_list_state_alts_code(), output_automata_list_transition_code(), output_dfa_insn_code_func(), output_internal_min_issue_delay_func(), and output_internal_trans_func().
| #define TEST_BIT | ( | bitstring, | |||
| bitno | ) | (((char *) (bitstring)) [(bitno) / CHAR_BIT] >> (bitno) % CHAR_BIT & 1) |
Definition at line 3556 of file genautomata.c.
Referenced by add_conflict_edge(), add_control_edge(), add_dependence(), add_forward_dependence(), aggressive_coalesce(), build_intra_loop_deps(), build_store_vectors(), build_web_parts_and_conflicts(), cached_make_edge(), calculate_global_regs_live(), calculate_reg_pav(), ccp_initialize(), cfg_blocks_add(), check_sibcall_argument_overlap_1(), check_uncoalesced_moves(), classic_gcse(), coalesce(), collect_points_to_info_for(), compact_var_map(), compute_ae_kill(), compute_antic_aux(), compute_dominance_frontiers_1(), compute_kill_rd(), compute_topo_order(), compute_transp(), copyprop_hardreg_forward(), count_or_remove_death_notes(), create_scc(), def_reaches_here_p(), delete_null_pointer_checks_1(), detect_spill_temps(), detect_web_parts_to_rebuild(), df_hybrid_search_backward(), df_hybrid_search_forward(), df_iterative_dataflow(), do_da_constraint(), do_ds_constraint(), do_sd_constraint(), dump_copy_of(), dump_igraph(), dump_sbitmap_file(), dump_web_conflicts(), duplicate_loop_to_header_edge(), eh_region_outermost(), elim_backward(), elim_create(), elim_forward(), elim_unvisited_predecessor(), eliminate_phi(), emit_loads(), ephi_backward(), ephi_create(), ephi_forward(), examine_flow_edges(), expr_killed_p(), expr_reaches_here_p_work(), extended_coalesce_2(), fill_always_executed_in(), find_and_collapse_graph_cycles(), find_assert_locations(), find_avail_set(), find_bypass_set(), find_many_sub_basic_blocks(), find_nodes_on_paths(), fix_bb_placements(), fix_irreducible_loops(), flow_call_edges_add(), flow_depth_first_order_compute(), flow_dfs_compute_reverse_execute(), flow_loops_find(), flow_preorder_transversal_compute(), flow_reverse_top_sort_order_compute(), follow_def_use_chains(), get_address_cost(), hoist_code(), hoist_expr_reaches_here_p(), hybrid_search(), hybrid_search_bitmap(), hybrid_search_sbitmap(), insert_coalesced_conflicts(), insert_insn_end_bb(), insert_store(), is_new_name(), is_old_name(), is_partly_live_1(), iterative_dataflow(), iterative_dataflow_bitmap(), iterative_dataflow_sbitmap(), live_out_1(), livethrough_conflicts_bb(), loopify(), mark_control_dependent_edges_necessary(), mark_dfs_back_edges(), mark_operand_necessary(), maybe_queue_var(), mem_overlaps_already_clobbered_arg_p(), multiplier_allowed_in_address_p(), ok(), optimize_unexecutable_edges(), output_cycle_reservs(), parts_to_webs_1(), post_order_compute(), pre_and_rev_post_order_compute(), pre_delete(), pre_edge_insert(), pre_expr_reaches_here_p_work(), pre_insert_copies(), process_ssa_edge_worklist(), process_unification_queue(), propagate_necessity(), ra_build_realloc(), reachable_at_most_once(), record_conflict(), register_edge_assert_for(), reloads_to_loads(), remember_move(), remove_path(), remove_reachable_equiv_notes(), rewrite_program2(), root_var_init(), rtl_flow_call_edges_add(), scc_visit(), see_pre_delete_extension(), simulate_block(), single_reachable_address(), solve_graph(), sort_and_combine_web_pairs(), spill_coalescing(), spill_prop_insert(), spill_prop_savings(), ssa_mark_def_sites(), ssa_mark_def_sites_initialize_block(), ssa_mark_phi_uses(), ssa_rewrite_initialize_block(), ssa_rewrite_phi_arguments(), ssa_rewrite_stmt(), store_motion(), store_one_arg(), store_ops_ok(), test_unit_reserv(), topo_visit(), tree_flow_call_edges_add(), type_var_init(), update_alias_info(), update_dist_to_successors(), verify_loop_structure(), visit_expression(), visit_phi_node(), vt_find_locations(), and walk_dominator_tree().
| #define TIME_OPTION "-time" |
Referenced by gen_automata_option(), and initiate_automaton_gen().
| #define TRANSITION_FUNC_NAME "state_transition" |
| #define UNDEFINED_LONGEST_PATH_LENGTH -1 |
Definition at line 1073 of file genautomata.c.
Referenced by get_free_state(), longest_path_length(), and output_dfa_max_issue_rate().
| #define V_OPTION "-v" |
Referenced by gen_automata_option(), and initiate_automaton_gen().
| #define VLA_HWINT_ADD | ( | vla, | |||
| ptr | ) |
Value:
do { \ vla_hwint_t *const vla_ptr = &(vla); \ \ VLA_HWINT_EXPAND (*vla_ptr, 1); \ VARRAY_WIDE_INT (vla_ptr->varray, vla_ptr->length - 1) = (ptr); \ } while (0)
Referenced by add_vect(), and add_vect_el().
| #define VLA_HWINT_BEGIN | ( | vla | ) | (&VARRAY_WIDE_INT ((vla).varray, 0)) |
| #define VLA_HWINT_CREATE | ( | vla, | |||
| allocated_length, | |||||
| name | ) |
Value:
do { \ vla_hwint_t *const vla_ptr = &(vla); \ \ VARRAY_WIDE_INT_INIT (vla_ptr->varray, allocated_length, name); \ vla_ptr->length = 0; \ } while (0)
Referenced by create_state_ainsn_table(), output_dead_lock_vect(), output_min_issue_delay_table(), output_reserved_units_table(), output_state_alts_table(), output_trans_table(), and output_translate_vect().
| #define VLA_HWINT_DELETE | ( | vla | ) | VARRAY_FREE ((vla).varray) |
| #define VLA_HWINT_EXPAND | ( | vla, | |||
| n | ) |
Value:
do { \ vla_hwint_t *const expand_vla_ptr = &(vla); \ const size_t new_length = (n) + expand_vla_ptr->length; \ \ if (VARRAY_SIZE (expand_vla_ptr->varray) < new_length) \ VARRAY_GROW (expand_vla_ptr->varray, \ (new_length - expand_vla_ptr->length < 128 \ ? expand_vla_ptr->length + 128 : new_length)); \ expand_vla_ptr->length = new_length; \ } while (0)
Referenced by create_state_ainsn_table(), output_dead_lock_vect(), output_min_issue_delay_table(), output_reserved_units_table(), and output_translate_vect().
| #define VLA_HWINT_LENGTH | ( | vla | ) | ((vla).length) |
| #define VLA_HWINT_NULLIFY | ( | vla | ) | ((vla).length = 0) |
Referenced by output_state_alts_table(), and output_trans_table().
| #define VLA_PTR_ADD | ( | vla, | |||
| ptr | ) |
Value:
do { \ vla_ptr_t *const vla_ptr = &(vla); \ \ VLA_PTR_EXPAND (*vla_ptr, 1); \ VARRAY_GENERIC_PTR (vla_ptr->varray, vla_ptr->length - 1) = (ptr);\ } while (0)
Referenced by add_achieved_state(), add_automaton_state(), add_state_reservs(), add_states_vect_el(), copy_equiv_class(), create_composed_state(), evaluate_equiv_classes(), form_ainsn_with_same_reservs(), free_state(), gen_absence_set(), gen_automaton(), gen_bypass(), gen_cpu_unit(), gen_excl_set(), gen_insn_reserv(), gen_presence_absence_set(), gen_presence_set(), gen_query_cpu_unit(), gen_reserv(), make_automaton(), NDFA_to_DFA(), partition_equiv_class(), uniq_sort_alt_states(), and units_to_automata_heuristic_distr().
| #define VLA_PTR_BEGIN | ( | vla | ) | ((void *) &VARRAY_GENERIC_PTR ((vla).varray, 0)) |
Referenced by copy_equiv_class(), evaluate_equiv_classes(), form_important_insn_automata_lists(), initiate_states(), merge_states(), output_dead_lock_vect(), output_min_issue_delay_table(), output_reserved_units_table(), output_state(), output_state_alts_table(), output_trans_table(), process_state_for_insn_equiv_partition(), remove_state_duplicate_reservs(), uniq_sort_alt_states(), and units_to_automata_heuristic_distr().
| #define VLA_PTR_CREATE | ( | vla, | |||
| allocated_length, | |||||
| name | ) |
Value:
do \ { \ vla_ptr_t *const vla_ptr = &(vla); \ \ VARRAY_GENERIC_PTR_INIT (vla_ptr->varray, allocated_length, name);\ vla_ptr->length = 0; \ } \ while (0)
Referenced by check_regexp_units_distribution(), evaluate_equiv_classes(), form_ainsn_with_same_reservs(), form_important_insn_automata_lists(), initiate_automaton_gen(), initiate_states(), make_automaton(), minimize_DFA(), NDFA_to_DFA(), output_dead_lock_vect(), output_min_issue_delay_table(), output_reserved_units_table(), output_state(), output_state_alts_table(), output_trans_table(), process_state_for_insn_equiv_partition(), uniq_sort_alt_states(), and units_to_automata_heuristic_distr().
| #define VLA_PTR_DELETE | ( | vla | ) | VARRAY_FREE ((vla).varray) |
Referenced by check_regexp_units_distribution(), evaluate_equiv_classes(), finish_states(), form_ainsn_with_same_reservs(), form_important_insn_automata_lists(), make_automaton(), minimize_DFA(), NDFA_to_DFA(), output_dead_lock_vect(), output_min_issue_delay_table(), output_reserved_units_table(), output_state(), output_state_alts_table(), output_trans_table(), process_state_for_insn_equiv_partition(), uniq_sort_alt_states(), and units_to_automata_heuristic_distr().
| #define VLA_PTR_EXPAND | ( | vla, | |||
| n | ) |
Value:
do { \ vla_ptr_t *const expand_vla_ptr = &(vla); \ const size_t new_length = (n) + expand_vla_ptr->length; \ \ if (VARRAY_SIZE (expand_vla_ptr->varray) < new_length) \ VARRAY_GROW (expand_vla_ptr->varray, \ (new_length - expand_vla_ptr->length < 128 \ ? expand_vla_ptr->length + 128 : new_length)); \ expand_vla_ptr->length = new_length; \ } while (0)
Referenced by process_state_for_insn_equiv_partition(), and store_alt_unit_usage().
| #define VLA_PTR_LAST | ( | vla | ) |
Value:
(&VARRAY_GENERIC_PTR ((vla).varray, \ (vla).length - 1))
Referenced by copy_equiv_class(), evaluate_equiv_classes(), form_important_insn_automata_lists(), merge_states(), output_dead_lock_vect(), output_min_issue_delay_table(), output_reserved_units_table(), output_state(), output_state_alts_table(), output_trans_table(), remove_state_duplicate_reservs(), and units_to_automata_heuristic_distr().
| #define VLA_PTR_LENGTH | ( | vla | ) | ((vla).length) |
Referenced by check_regexp_units_distribution(), evaluate_equiv_classes(), expand_automata(), form_ainsn_with_same_reservs(), get_free_state(), make_automaton(), NDFA_to_DFA(), output_state(), output_state_alts_table(), output_trans_table(), store_alt_unit_usage(), uniq_sort_alt_states(), and units_to_automata_heuristic_distr().
| #define VLA_PTR_NULLIFY | ( | vla | ) | ((vla).length = 0) |
Referenced by copy_equiv_class(), and form_important_insn_automata_lists().
Referenced by get_free_state(), make_automaton(), NDFA_to_DFA(), remove_state_duplicate_reservs(), and uniq_sort_alt_states().
| #define W_OPTION "-w" |
Referenced by gen_automata_option(), and initiate_automaton_gen().
Definition at line 197 of file genautomata.c.
| typedef struct alt_state* alt_state_t |
Definition at line 194 of file genautomata.c.
Definition at line 196 of file genautomata.c.
| typedef struct automata_list_el* automata_list_el_t |
Definition at line 199 of file genautomata.c.
| typedef struct automaton* automaton_t |
Definition at line 198 of file genautomata.c.
Definition at line 191 of file genautomata.c.
| typedef int pos_t |
Definition at line 121 of file genautomata.c.
Definition at line 192 of file genautomata.c.
| typedef set_el_t* reserv_sets_t |
Definition at line 129 of file genautomata.c.
| typedef unsigned HOST_WIDE_INT set_el_t |
Definition at line 125 of file genautomata.c.
| typedef struct state_ainsn_table* state_ainsn_table_t |
Definition at line 200 of file genautomata.c.
Definition at line 195 of file genautomata.c.
Definition at line 155 of file genautomata.c.
| typedef struct unit_decl* unit_decl_t |
Definition at line 190 of file genautomata.c.
| typedef struct unit_set_el* unit_set_el_t |
Definition at line 193 of file genautomata.c.
| typedef HOST_WIDE_INT vect_el_t |
Definition at line 158 of file genautomata.c.
| typedef vla_ptr_t vla_hwint_t |
Definition at line 140 of file genautomata.c.
| enum regexp_mode |
Definition at line 882 of file genautomata.c.
| static int active_time | ( | ticker_t | ticker | ) | [static] |
Definition at line 3292 of file genautomata.c.
References get_run_time().
Referenced by print_active_time().
Definition at line 5828 of file genautomata.c.
References VLA_PTR_ADD.
Referenced by evaluate_equiv_classes().
Definition at line 3368 of file genautomata.c.
References create_node(), DECL_INSN_RESERV, description::decls, description::decls_num, description::insns_num, decl::mode, NULL, num_dfa_decls, and decl::pos.
Referenced by transform_insn_regexps().
| static arc_t add_arc | ( | state_t | from_state, | |
| state_t | to_state, | |||
| ainsn_t | ainsn, | |||
| int | state_alts | |||
| ) | [static] |
Definition at line 4230 of file genautomata.c.
References ainsn::arc_exists_p, create_node(), find_arc(), arc::insn, new_arc(), arc::next_arc_marked_by_insn, arc::next_out_arc, NULL, arc::state_alts, and arc::to_state.
Referenced by create_composed_state(), make_automaton(), and merge_states().
Definition at line 9515 of file genautomata.c.
References VLA_PTR_ADD.
Referenced by form_important_insn_automata_lists().
| static void add_excls | ( | unit_set_el_t | dest_list, | |
| unit_set_el_t | source_list, | |||
| excl_pos | ||||
| ) | [static] |
Definition at line 2449 of file genautomata.c.
References unit_decl::automaton_name, copy, copy_node, dst, error(), unit_decl::excl_list, unit_decl::name, unit_set_el::next_unit_set_el, NULL, src, strcmp(), and unit_set_el::unit_decl.
Referenced by process_decls().
| static void add_presence_absence | ( | unit_set_el_t | dest_list, | |
| unit_set_el_t | source_list, | |||
| req_pos | , | |||
| int | presence_p | |||
| ) | [static] |
Definition at line 2548 of file genautomata.c.
References unit_decl::absence_list, unit_decl::automaton_name, copy, copy_node, dst, error(), unit_decl::excl_list, unit_decl::name, unit_set_el::next_unit_set_el, NULL, unit_decl::presence_list, src, strcmp(), unit_set_el::unit_decl, and warning.
Referenced by process_decls().
Definition at line 8932 of file genautomata.c.
References alt_state::next_sorted_alt_state, NULL, alt_state::state, and VLA_PTR_ADD.
Referenced by add_state_reservs(), output_state(), and VEC().
Definition at line 7556 of file genautomata.c.
References VLA_PTR_ADD.
Referenced by output_dead_lock_vect(), output_min_issue_delay_table(), output_reserved_units_table(), output_state_alts_table(), and output_trans_table().
| static void add_vect | ( | state_ainsn_table_t | tab, | |
| int | vect_num, | |||
| vect_el_t * | vect, | |||
| int | vect_length | |||
| ) | [static] |
Definition at line 7395 of file genautomata.c.
References abort, i, VLA_HWINT, VLA_HWINT_ADD, VLA_HWINT_BEGIN, and VLA_HWINT_LENGTH.
Referenced by output_state_alts_table(), and output_trans_table().
| static void add_vect_el | ( | vla_hwint_t * | vect, | |
| ainsn_t | ainsn, | |||
| int | el_value | |||
| ) | [static] |
Definition at line 7532 of file genautomata.c.
References abort, insn_reserv_decl::equiv_class_num, ainsn::insn_equiv_class_num, NULL, VLA_HWINT, VLA_HWINT_ADD, and VLA_HWINT_LENGTH.
Referenced by output_state_alts_table(), and output_trans_table().
| static reserv_sets_t alloc_empty_reserv_sets | ( | void | ) | [static] |
Definition at line 3604 of file genautomata.c.
References memset, obstack_base, obstack_blank, obstack_finish, and result.
Referenced by form_reserv_sets_list(), form_reservs_matter(), get_free_state(), and initiate_states().
Definition at line 3452 of file genautomata.c.
Referenced by alt_states_eq(), and uniq_sort_alt_states().
| static int alt_states_eq | ( | alt_state_t | alt_states_1, | |
| alt_state_t | alt_states_2 | |||
| ) | [static] |
Definition at line 3517 of file genautomata.c.
References alt_state_cmp(), alt_state::next_sorted_alt_state, and NULL.
Referenced by form_ainsn_with_same_reservs().
| static void automata_list_add | ( | automaton_t | automaton | ) | [static] |
Definition at line 4412 of file genautomata.c.
References automata_list_el::automaton, get_free_automata_list_el(), and automata_list_el::next_automata_list_el.
Referenced by form_important_insn_automata_lists().
| static int automata_list_eq_p | ( | void * | automata_list_1, | |
| const void * | automata_list_2 | |||
| ) | const [static] |
Definition at line 4376 of file genautomata.c.
References automata_list_el::automaton, automata_list_el::next_automata_list_el, and NULL.
Referenced by initiate_automata_lists().
| static automata_list_el_t automata_list_finish | ( | void | ) | [static] |
Definition at line 4426 of file genautomata.c.
References entry_ptr, free_automata_list(), htab_find_slot(), and NULL.
Referenced by form_important_insn_automata_lists().
Definition at line 4358 of file genautomata.c.
References automata_list_el::automaton, automaton::automaton_order_num, CHAR_BIT, automata_list_el::next_automata_list_el, and NULL.
Referenced by initiate_automata_lists().
Definition at line 4405 of file genautomata.c.
References NULL.
Referenced by form_important_insn_automata_lists().
| static int automaton_decl_eq_p | ( | void* | automaton_decl_1, | |
| const void* | automaton_decl_2 | |||
| ) | const [static] |
Definition at line 2114 of file genautomata.c.
References abort, DECL_AUTOMATON, decl::mode, NULL, and strcmp().
Referenced by initiate_automaton_decl_table().
Definition at line 2099 of file genautomata.c.
References abort, DECL_AUTOMATON, decl::mode, NULL, and string_hash().
Referenced by initiate_automaton_decl_table().
| static const char* base_file_name | ( | char * | file_name | ) | const [static] |
Definition at line 9395 of file genautomata.c.
References strlen().
Referenced by initiate_automaton_gen().
| static void build_automaton | ( | automaton_t | automaton | ) | [static] |
Definition at line 6209 of file genautomata.c.
References count_states_and_arcs(), make_automaton(), minimize_DFA(), NDFA_to_DFA(), ticker_off(), and ticker_on().
Referenced by create_automata().
Definition at line 3238 of file genautomata.c.
References check_automaton_usage(), check_loops_in_regexps(), check_usage(), evaluate_max_reserv_cycles(), have_error, process_decls(), and process_regexp_decls().
Referenced by expand_automata().
Definition at line 9466 of file genautomata.c.
References automaton::ainsn_list, ainsn::arc_exists_p, automaton::corresponding_automaton_decl, error(), description::first_automaton, ainsn::first_insn_with_same_reservs, ainsn::insn_reserv_decl, automaton_decl::name, insn_reserv_decl::name, ainsn::next_ainsn, automaton::next_automaton, ainsn::next_same_reservs_insn, NULL, and warning.
Referenced by expand_automata().
Definition at line 2913 of file genautomata.c.
References DECL_AUTOMATON, description::decls, description::decls_num, error(), i, decl::mode, and warning.
Referenced by check_all_description().
Definition at line 3111 of file genautomata.c.
References abort, DECL_RESERV, description::decls, description::decls_num, error(), i, loop_in_regexp(), decl::mode, and NULL.
Referenced by check_all_description().
| static char* check_name | ( | char * | name, | |
| pos | ||||
| ) | [static] |
Definition at line 1482 of file genautomata.c.
References error().
Referenced by gen_automaton(), gen_cpu_unit(), gen_insn_reserv(), gen_query_cpu_unit(), and gen_reserv().
Definition at line 5314 of file genautomata.c.
References unit_decl::automaton_decl, DECL_UNIT, description::decls, description::decls_num, error(), form_the_same_automaton_unit_lists(), i, decl::mode, unit_decl::name, unit_decl::the_same_automaton_message_reported_p, unit_decl::the_same_automaton_unit, and TRUE.
Referenced by expand_automata().
Definition at line 3017 of file genautomata.c.
References DECL_RESERV, DECL_UNIT, description::decls, description::decls_num, error(), i, decl::mode, and warning.
Referenced by check_all_description().
Definition at line 5868 of file genautomata.c.
References insn_reserv_decl::equiv_class_num, first_out_arc(), arc::insn, ainsn::insn_reserv_decl, next_out_arc(), NULL, and insn_reserv_decl::state_alts.
Referenced by partition_equiv_class().
| static int comb_vect_p | ( | state_ainsn_table_t | tab | ) | [static] |
Definition at line 7295 of file genautomata.c.
References VLA_HWINT_LENGTH.
Referenced by output_automata_list_state_alts_code(), output_automata_list_transition_code(), output_state_ainsn_table(), and output_statistics().
| static int compare_max_occ_cycle_nums | ( | void * | unit_decl_1, | |
| const void * | unit_decl_2 | |||
| ) | const [static] |
Definition at line 6457 of file genautomata.c.
References DECL_UNIT.
Referenced by units_to_automata_heuristic_distr().
| static int compare_transition_els_num | ( | void * | state_ptr_1, | |
| const void * | state_ptr_2 | |||
| ) | const [static] |
Definition at line 7512 of file genautomata.c.
References out_state_arcs_num().
Referenced by output_state_alts_table(), and output_trans_table().
Definition at line 5883 of file genautomata.c.
References VLA_PTR_ADD, VLA_PTR_BEGIN, VLA_PTR_LAST, and VLA_PTR_NULLIFY.
Referenced by evaluate_equiv_classes().
Definition at line 4645 of file genautomata.c.
References abort, copy_node, i, REGEXP_ALLOF, REGEXP_ONEOF, REGEXP_REPEAT, REGEXP_RESERV, REGEXP_SEQUENCE, result, rm_allof, rm_nothing, rm_oneof, rm_repeat, rm_reserv, rm_sequence, and rm_unit.
Referenced by copy_insn_regexp(), transform_1(), transform_2(), transform_3(), and transform_insn_regexps().
| static void count_states_and_arcs | ( | automaton_t | automaton, | |
| int * | states_num, | |||
| int * | arcs_num | |||
| ) | [static] |
Definition at line 6193 of file genautomata.c.
References incr_states_and_arcs_nums(), and pass_states().
Referenced by build_automaton().
Definition at line 6531 of file genautomata.c.
References create_node(), DECL_INSN_RESERV, description::decls, description::decls_num, FALSE, i, ainsn::important_p, ainsn::insn_reserv_decl, decl::mode, ainsn::next_ainsn, and NULL.
Referenced by create_automata().
| static void create_alt_states | ( | automaton_t | automaton | ) | [static] |
Definition at line 5467 of file genautomata.c.
References ainsn::alt_states, DECL_INSN_RESERV, ainsn::insn_reserv_decl, ainsn::next_ainsn, NULL, process_alts_for_forming_states(), ainsn::sorted_alt_states, insn_reserv_decl::transformed_regexp, and uniq_sort_alt_states().
Referenced by create_automata().
Definition at line 6589 of file genautomata.c.
References automaton::ainsn_list, automaton::automaton_order_num, build_automaton(), automaton::corresponding_automaton_decl, create_ainsns(), create_alt_states(), create_node(), create_ticker(), DECL_AUTOMATON, description::decls, description::decls_num, enumerate_states(), description::first_automaton, form_ainsn_with_same_reservs(), fprintf(), i, decl::mode, automaton_decl::name, automaton::next_automaton, NULL, set_insn_equiv_classes(), ticker_off(), ticker_on(), units_to_automata_distr(), and units_to_automata_heuristic_distr().
Referenced by generate().
| static void create_composed_state | ( | state_t | original_state, | |
| arc_t | arcs_marked_by_insn, | |||
| vla_ptr_t * | state_stack | |||
| ) | [static] |
Definition at line 5658 of file genautomata.c.
References abort, add_arc(), state::automaton, state::component_states, first_out_arc(), free_state(), get_free_alt_state(), get_free_state(), insert_state(), arc::insn, state::it_was_placed_in_stack_for_DFA_forming, alt_state::next_alt_state, arc::next_arc_marked_by_insn, next_out_arc(), alt_state::next_sorted_alt_state, NULL, remove_arc(), alt_state::state, arc::state_alts, temp_state, arc::to_state, uniq_sort_alt_states(), and VLA_PTR_ADD.
Referenced by NDFA_to_DFA().
Definition at line 1456 of file genautomata.c.
References memset, obstack_base, obstack_blank, obstack_finish, and result.
Referenced by add_advance_cycle_insn_decl(), add_arc(), cache_presence(), copy_node(), create_ainsns(), create_automata(), create_state_ainsn_table(), expand_automata(), form_reserv_sets_list(), gen_absence_set(), gen_automaton(), gen_bypass(), gen_cpu_unit(), gen_excl_set(), gen_insn_reserv(), gen_presence_absence_set(), gen_presence_set(), gen_query_cpu_unit(), gen_regexp_allof(), gen_regexp_el(), gen_regexp_oneof(), gen_regexp_repeat(), gen_regexp_sequence(), gen_reserv(), get_free_alt_state(), get_free_automata_list_el(), get_free_state(), process_excls(), process_presence_absence(), process_presence_absence_names(), process_presence_absence_patterns(), process_regexp(), transform_1(), transform_2(), and transform_3().
| static state_ainsn_table_t create_state_ainsn_table | ( | automaton_t | automaton | ) | [static] |
Definition at line 7304 of file genautomata.c.
References state_ainsn_table::automaton, state_ainsn_table::base_vect, state_ainsn_table::check_vect, state_ainsn_table::comb_vect, create_node(), state_ainsn_table::full_vect, i, state_ainsn_table::max_base_vect_el_value, state_ainsn_table::max_comb_vect_el_value, state_ainsn_table::min_base_vect_el_value, state_ainsn_table::min_comb_vect_el_value, tab, VLA_HWINT, VLA_HWINT_CREATE, and VLA_HWINT_EXPAND.
Referenced by output_state_alts_table(), and output_trans_table().
Definition at line 3258 of file genautomata.c.
References get_run_time(), ticker::incremented_off_time, and ticker::modified_creation_time.
Referenced by create_automata(), expand_automata(), generate(), transform_insn_regexps(), and write_automata().
Definition at line 2322 of file genautomata.c.
References abort, d1, d2, DECL_RESERV, DECL_UNIT, decl::mode, NULL, and strcmp().
Referenced by initiate_decl_table().
Definition at line 2306 of file genautomata.c.
References abort, d, DECL_RESERV, DECL_UNIT, decl::mode, NULL, and string_hash().
Referenced by initiate_decl_table().
Definition at line 6292 of file genautomata.c.
References ainsn::next_equiv_class_insn.
Referenced by process_insn_equiv_class().
| static void enumerate_states | ( | automaton_t | automaton | ) | [static] |
Definition at line 6258 of file genautomata.c.
References pass_states(), and set_order_state_num().
Referenced by create_automata().
| static double estimate_one_automaton_bound | ( | void | ) | [static] |
Definition at line 6431 of file genautomata.c.
References DECL_UNIT, description::decls, description::decls_num, exp, i, log(), MAX_FLOATING_POINT_VALUE_FOR_AUTOMATON_BOUND, and decl::mode.
Referenced by units_to_automata_heuristic_distr().
| static void evaluate_equiv_classes | ( | automaton_t | automaton, | |
| vla_ptr_t * | equiv_classes | |||
| ) | [static] |
Definition at line 6015 of file genautomata.c.
References add_achieved_state(), copy_equiv_class(), for(), init_equiv_class(), partition_equiv_class(), pass_states(), VLA_PTR_ADD, VLA_PTR_BEGIN, VLA_PTR_CREATE, VLA_PTR_DELETE, VLA_PTR_LAST, and VLA_PTR_LENGTH.
Referenced by minimize_DFA().
Definition at line 3214 of file genautomata.c.
References DECL_INSN_RESERV, description::decls, description::decls_num, i, description::max_insn_reserv_cycles, decl::mode, and process_regexp_cycles().
Referenced by check_all_description().
| static const char* file_name_suffix | ( | char * | file_name | ) | const [static] |
Definition at line 9379 of file genautomata.c.
References NULL.
Referenced by initiate_automaton_gen().
Definition at line 4213 of file genautomata.c.
References first_out_arc(), arc::insn, next_out_arc(), NULL, and arc::to_state.
Referenced by add_arc().
| static decl_t find_automaton_decl | ( | char * | name | ) | [static] |
Definition at line 2159 of file genautomata.c.
References DECL_AUTOMATON, htab_find(), decl::mode, and work_automaton_decl.
Referenced by process_decls().
| static struct bypass_decl* find_bypass | ( | struct bypass_decl * | bypass_list, | |
| struct insn_reserv_decl * | in_insn_reserv | |||
| ) | [static, read] |
Definition at line 2654 of file genautomata.c.
References bypass_decl::in_insn_reserv, bypass_decl::next, and NULL.
Referenced by process_decls().
| static decl_t find_decl | ( | char * | name | ) | [static] |
Definition at line 2370 of file genautomata.c.
References DECL_UNIT, htab_find(), decl::mode, and work_decl.
Referenced by process_decls(), process_excls(), process_presence_absence(), process_presence_absence_names(), process_presence_absence_patterns(), and process_regexp().
| static decl_t find_insn_decl | ( | char * | name | ) | [static] |
Definition at line 2263 of file genautomata.c.
References DECL_INSN_RESERV, htab_find(), decl::mode, and work_insn_decl.
Referenced by process_decls().
Definition at line 4444 of file genautomata.c.
References htab_delete().
Referenced by write_automata().
Definition at line 2186 of file genautomata.c.
References htab_delete().
Referenced by write_automata().
Definition at line 2396 of file genautomata.c.
References htab_delete().
Referenced by write_automata().
| static void finish_forming_alt_state | ( | alt_state_t | alt_state, | |
| automaton | ||||
| ) | [static] |
Definition at line 5408 of file genautomata.c.
References free_state(), and insert_state().
Referenced by process_alts_for_forming_states().
Definition at line 2290 of file genautomata.c.
References htab_delete().
Referenced by write_automata().
Definition at line 6772 of file genautomata.c.
References length, obstack_blank_fast, and obstack_object_size.
Referenced by output_print_reservation_func(), and output_regexp().
Definition at line 4155 of file genautomata.c.
References finish_alt_states(), htab_delete(), and VLA_PTR_DELETE.
Referenced by write_automata().
Definition at line 4268 of file genautomata.c.
Referenced by clear_arc_insns_equiv_num(), create_composed_state(), find_arc(), form_arcs_marked_by_insn(), form_important_insn_automata_lists(), incr_states_and_arcs_nums(), longest_path_length(), merge_states(), min_issue_delay_pass_states(), out_state_arcs_num(), output_dead_lock_vect(), output_state_alts_table(), output_state_arcs(), output_trans_table(), pass_state_graph(), process_state_for_insn_equiv_partition(), set_new_cycle_flags(), set_out_arc_insns_equiv_num(), and state_is_differed().
| static void form_ainsn_with_same_reservs | ( | automaton_t | automaton | ) | [static] |
Definition at line 5496 of file genautomata.c.
References alt_states_eq(), DECL_INSN_RESERV, ainsn::first_insn_with_same_reservs, i, ainsn::insn_reserv_decl, ainsn::next_ainsn, ainsn::next_same_reservs_insn, NULL, ainsn::sorted_alt_states, VLA_PTR, VLA_PTR_ADD, VLA_PTR_CREATE, VLA_PTR_DELETE, and VLA_PTR_LENGTH.
Referenced by create_automata().
Definition at line 5630 of file genautomata.c.
References abort, insn_reserv_decl::arcs_marked_by_insn, DECL_INSN_RESERV, description::decls, description::decls_num, first_out_arc(), i, arc::insn, ainsn::insn_reserv_decl, decl::mode, arc::next_arc_marked_by_insn, next_out_arc(), and NULL.
Referenced by NDFA_to_DFA().
Definition at line 9524 of file genautomata.c.
References abort, add_automaton_state(), automaton::ainsn_list, automata_list_add(), automata_list_finish(), automata_list_start(), DECL_INSN_RESERV, description::decls, description::decls_num, description::first_automaton, ainsn::first_insn_with_same_reservs, first_out_arc(), i, ainsn::important_p, arc::insn, ainsn::insn_reserv_decl, decl::mode, ainsn::next_ainsn, automaton::next_automaton, next_out_arc(), ainsn::next_same_reservs_insn, NULL, pass_states(), arc::to_state, TRUE, VLA_PTR_BEGIN, VLA_PTR_CREATE, VLA_PTR_DELETE, VLA_PTR_LAST, and VLA_PTR_NULLIFY.
Referenced by expand_automata().
Definition at line 6688 of file genautomata.c.
References abort, i, NOTHING_NAME, obstack_1grow, obstack_grow, REGEXP_ALLOF, REGEXP_ONEOF, REGEXP_REPEAT, REGEXP_RESERV, REGEXP_SEQUENCE, REGEXP_UNIT, rm_allof, rm_nothing, rm_oneof, rm_repeat, rm_reserv, rm_sequence, rm_unit, sprintf(), and strlen().
Referenced by form_regexp(), and regexp_representation().
| static void form_the_same_automaton_unit_lists | ( | ) | [static] |
Definition at line 5284 of file genautomata.c.
References DECL_INSN_RESERV, DECL_UNIT, description::decls, description::decls_num, FALSE, form_the_same_automaton_unit_lists_from_regexp(), free(), i, description::max_insn_reserv_cycles, decl::mode, and xmalloc().
Referenced by check_unit_distributions_to_automata().
Definition at line 5229 of file genautomata.c.
References abort, i, description::max_insn_reserv_cycles, regexp::mode, NULL, process_unit_to_form_the_same_automaton_unit_lists(), REGEXP_ALLOF, REGEXP_ONEOF, REGEXP_SEQUENCE, rm_allof, rm_nothing, rm_oneof, rm_sequence, and rm_unit.
Referenced by form_the_same_automaton_unit_lists().
| static void free_alt_state | ( | alt_state_t | alt_state | ) | [static] |
Definition at line 3424 of file genautomata.c.
References NULL.
Referenced by free_alt_states(), and uniq_sort_alt_states().
| static void free_alt_states | ( | alt_state_t | alt_states_list | ) | [static] |
Definition at line 3435 of file genautomata.c.
References free_alt_state(), alt_state::next_alt_state, and NULL.
Referenced by free_state().
| static void free_automata_list | ( | automata_list_el_t | automata_list | ) | [static] |
Definition at line 4341 of file genautomata.c.
References free_automata_list_el(), automata_list_el::next_automata_list_el, and NULL.
Referenced by automata_list_finish().
| static void free_automata_list_el | ( | automata_list_el_t | automata_list_el | ) | [static] |
Definition at line 3974 of file genautomata.c.
References free_alt_states(), and VLA_PTR_ADD.
Referenced by create_composed_state(), finish_forming_alt_state(), state_shift(), and states_union().
| static regexp_t gen_regexp | ( | char * | str | ) | [static] |
Definition at line 2024 of file genautomata.c.
References gen_regexp_sequence().
Referenced by gen_insn_reserv(), and gen_reserv().
| static regexp_t gen_regexp_allof | ( | char * | str | ) | [static] |
Definition at line 1944 of file genautomata.c.
References create_node(), fatal(), gen_regexp_repeat(), get_str_vect(), i, regexp::mode, NULL, REGEXP_ALLOF, and rm_allof.
Referenced by gen_regexp_oneof().
| static regexp_t gen_regexp_el | ( | char * | str | ) | [static] |
Definition at line 1880 of file genautomata.c.
References create_node(), fatal(), gen_regexp_sequence(), len, regexp::mode, NOTHING_NAME, REGEXP_UNIT, rm_nothing, rm_unit, strcmp(), and strlen().
Referenced by gen_regexp_repeat().
| static regexp_t gen_regexp_oneof | ( | char * | str | ) | [static] |
Definition at line 1971 of file genautomata.c.
References create_node(), fatal(), gen_regexp_allof(), get_str_vect(), i, regexp::mode, NULL, REGEXP_ONEOF, and rm_oneof.
Referenced by gen_regexp_sequence().
| static regexp_t gen_regexp_repeat | ( | char * | str | ) | [static] |
Definition at line 1910 of file genautomata.c.
References atoi(), create_node(), fatal(), gen_regexp_el(), get_str_vect(), i, regexp::mode, NULL, REGEXP_REPEAT, and rm_repeat.
Referenced by gen_regexp_allof().
| static regexp_t gen_regexp_sequence | ( | char * | str | ) | [static] |
Definition at line 1998 of file genautomata.c.
References create_node(), gen_regexp_oneof(), get_str_vect(), i, regexp::mode, REGEXP_SEQUENCE, and rm_sequence.
Referenced by gen_regexp(), and gen_regexp_el().
Definition at line 9194 of file genautomata.c.
References create_automata(), create_ticker(), initiate_arcs(), initiate_automata_lists(), initiate_excl_sets(), initiate_pass_states(), initiate_presence_absence_sets(), initiate_states(), ticker_off(), and description::units_num.
Referenced by expand_automata(), and read_class().
| static reserv_sets_t get_excl_set | ( | reserv_sets_t | in_set | ) | [static] |
Definition at line 4501 of file genautomata.c.
References CHAR_BIT, i, memset, and description::units_num.
Referenced by reserv_sets_are_intersected().
| static alt_state_t get_free_alt_state | ( | void | ) | [static] |
Definition at line 3400 of file genautomata.c.
References create_node(), alt_state::next_alt_state, alt_state::next_sorted_alt_state, NULL, result, and alt_state::state.
Referenced by create_composed_state(), merge_states(), and process_alts_for_forming_states().
| static automata_list_el_t get_free_automata_list_el | ( | void | ) | [static] |
Definition at line 4311 of file genautomata.c.
References automata_list_el::automaton, create_node(), automata_list_el::next_automata_list_el, NULL, and result.
Referenced by automata_list_add().
| static state_t get_free_state | ( | int | with_reservs, | |
| automaton_t | automaton | |||
| ) | [static] |
Definition at line 3931 of file genautomata.c.
References abort, alloc_empty_reserv_sets(), state::automaton, state::component_states, create_node(), state::first_out_arc, state::it_was_placed_in_stack_for_DFA_forming, state::it_was_placed_in_stack_for_NDFA_forming, state::longest_path_length, memset, NULL, state::reservs, result, UNDEFINED_LONGEST_PATH_LENGTH, state::unique_num, VLA_PTR, VLA_PTR_LENGTH, and VLA_PTR_SHORTEN.
Referenced by create_composed_state(), make_automaton(), merge_states(), process_alts_for_forming_states(), state_shift(), and states_union().
| static reserv_sets_t get_presence_absence_set | ( | reserv_sets_t | in_set, | |
| int | presence_p | |||
| ) | [static] |
Definition at line 4598 of file genautomata.c.
References CHAR_BIT, i, memset, and description::units_num.
Referenced by reserv_sets_are_intersected().
| static char** get_str_vect | ( | char * | str, | |
| int * | els_num, | |||
| int | sep, | |||
| int | par_flag | |||
| ) | [static] |
Definition at line 1582 of file genautomata.c.
References abort, i, n_sep_els(), next_sep_el(), NULL, obstack_base, obstack_blank, and obstack_finish.
Referenced by gen_absence_set(), gen_automaton(), gen_bypass(), gen_cpu_unit(), gen_excl_set(), gen_presence_absence_set(), gen_presence_set(), gen_query_cpu_unit(), gen_regexp_allof(), gen_regexp_oneof(), gen_regexp_repeat(), and gen_regexp_sequence().
Definition at line 6181 of file genautomata.c.
References first_out_arc(), next_out_arc(), and NULL.
Referenced by count_states_and_arcs().
Definition at line 5927 of file genautomata.c.
References NULL.
Referenced by evaluate_equiv_classes().
Definition at line 4395 of file genautomata.c.
References automata_list_eq_p(), automata_list_hash(), htab_create(), and NULL.
Referenced by generate().
Definition at line 2175 of file genautomata.c.
References automaton_decl_eq_p(), automaton_decl_hash(), htab_create(), decl::mode, and work_automaton_decl.
Referenced by initiate_automaton_gen().
| void initiate_automaton_gen | ( | int | argc, | |
| char ** | argv | |||
| ) |
Definition at line 2386 of file genautomata.c.
References decl_eq_p(), decl_hash(), htab_create(), decl::mode, and work_decl.
Referenced by initiate_automaton_gen().
Definition at line 4466 of file genautomata.c.
References DECL_UNIT, description::decls, description::decls_num, i, memset, decl::mode, unit_set_el::next_unit_set_el, NULL, obstack_base, obstack_blank, obstack_finish, SET_BIT, unit_set_el::unit_decl, unit_decl::unit_num, and description::units_num.
Referenced by generate().
Definition at line 2279 of file genautomata.c.
References htab_create(), insn_decl_eq_p(), insn_decl_hash(), decl::mode, and work_insn_decl.
Referenced by initiate_automaton_gen().
| static void initiate_presence_absence_sets | ( | ) | [static] |
Definition at line 4546 of file genautomata.c.
References DECL_UNIT, description::decls, description::decls_num, i, memset, decl::mode, unit_set_el::next_unit_set_el, NULL, obstack_base, obstack_blank, obstack_finish, SET_BIT, unit_set_el::unit_decl, unit_decl::unit_num, and description::units_num.
Referenced by generate().
Definition at line 4126 of file genautomata.c.
References alloc_empty_reserv_sets(), CHAR_BIT, DECL_UNIT, description::decls, description::decls_num, htab_create(), i, initiate_alt_states(), description::max_insn_reserv_cycles, decl::mode, NULL, state_eq_p(), state_hash(), description::units_num, VLA_PTR_BEGIN, and VLA_PTR_CREATE.
Referenced by generate().
| static ainsn_t insert_ainsn_into_equiv_class | ( | ainsn_t | ainsn, | |
| ainsn_t | cyclic_equiv_class_insn_list | |||
| ) | [static] |
Definition at line 6274 of file genautomata.c.
References ainsn::next_equiv_class_insn, and NULL.
Referenced by process_insn_equiv_class(), and set_insn_equiv_classes().
Definition at line 2138 of file genautomata.c.
References entry_ptr, htab_find_slot(), and NULL.
Referenced by process_decls().
Definition at line 2350 of file genautomata.c.
References entry_ptr, htab_find_slot(), and NULL.
Referenced by process_decls().
Definition at line 2242 of file genautomata.c.
References entry_ptr, htab_find_slot(), and NULL.
Referenced by process_decls().
Definition at line 4045 of file genautomata.c.
References entry_ptr, htab_find_slot(), and NULL.
Referenced by create_composed_state(), finish_forming_alt_state(), make_automaton(), state_shift(), and states_union().
Definition at line 2217 of file genautomata.c.
References abort, DECL_INSN_RESERV, decl::mode, NULL, and strcmp().
Referenced by initiate_insn_decl_table().
Definition at line 2203 of file genautomata.c.
References abort, DECL_INSN_RESERV, decl::mode, NULL, and string_hash().
Referenced by initiate_insn_decl_table().
Definition at line 4070 of file genautomata.c.
References abort, state::automaton, reserv_sets_are_intersected(), and state::reservs.
Referenced by make_automaton().
| static int it_is_empty_reserv_sets | ( | reserv_sets_t | operand | ) | [static] |
| static int longest_path_length | ( | state_t | state | ) | [static] |
Definition at line 6819 of file genautomata.c.
References abort, DECL_INSN_RESERV, first_out_arc(), arc::insn, ainsn::insn_reserv_decl, length, next_out_arc(), NULL, ON_THE_PATH, result, arc::to_state, and UNDEFINED_LONGEST_PATH_LENGTH.
Referenced by longest_path_length(), and process_state_longest_path_length().
Definition at line 3050 of file genautomata.c.
References abort, DECL_RESERV, i, decl::mode, NULL, REGEXP_ALLOF, REGEXP_ONEOF, REGEXP_REPEAT, REGEXP_RESERV, REGEXP_SEQUENCE, rm_allof, rm_nothing, rm_oneof, rm_repeat, rm_reserv, rm_sequence, and rm_unit.
Referenced by check_loops_in_regexps(), and loop_in_regexp().
| static void make_automaton | ( | automaton_t | automaton | ) | [static] |
Definition at line 5544 of file genautomata.c.
References abort, add_arc(), ainsn::alt_states, DECL_INSN_RESERV, ainsn::first_insn_with_same_reservs, get_free_state(), insert_state(), ainsn::insn_reserv_decl, intersected_state_reservs_p(), state::it_was_placed_in_stack_for_NDFA_forming, ainsn::next_ainsn, alt_state::next_alt_state, NULL, alt_state::state, arc::state_alts, state_shift(), states_union(), VLA_PTR, VLA_PTR_ADD, VLA_PTR_CREATE, VLA_PTR_DELETE, VLA_PTR_LENGTH, and VLA_PTR_SHORTEN.
Referenced by build_automaton().
Definition at line 9323 of file genautomata.c.
References attr_printf(), BYPASS_P_FUNC_NAME, COND, DECL_INSN_RESERV, description::decls, description::decls_num, i, make_internal_attr(), make_numeric_value(), decl::mode, NULL, rtvec_alloc(), rtx_alloc, strlen(), XEXP, XVEC, and XVECEXP.
Referenced by expand_automata().
Definition at line 9289 of file genautomata.c.
References abort, attr_printf(), COND, DECL_INSN_RESERV, description::decls, description::decls_num, i, INSN_DEFAULT_LATENCY_FUNC_NAME, description::insns_num, make_internal_attr(), make_numeric_value(), decl::mode, rtvec_alloc(), rtx_alloc, strlen(), XEXP, XVEC, and XVECEXP.
Referenced by expand_automata().
Definition at line 9215 of file genautomata.c.
References abort, attr_printf(), COND, DECL_INSN_RESERV, description::decls, description::decls_num, i, INSN_ALTS_FUNC_NAME, description::insns_num, make_internal_attr(), make_numeric_value(), decl::mode, REGEXP_ONEOF, rm_oneof, rtvec_alloc(), rtx_alloc, strlen(), XEXP, XVEC, and XVECEXP.
Referenced by expand_automata().
Definition at line 9252 of file genautomata.c.
References abort, attr_printf(), COND, DECL_INSN_RESERV, description::decls, description::decls_num, i, description::insns_num, INTERNAL_DFA_INSN_CODE_FUNC_NAME, make_internal_attr(), make_numeric_value(), decl::mode, rtvec_alloc(), rtx_alloc, strlen(), XEXP, XVEC, and XVECEXP.
Referenced by expand_automata().
| static void merge_states | ( | automaton_t | automaton, | |
| vla_ptr_t * | equiv_classes | |||
| ) | [static] |
Definition at line 6063 of file genautomata.c.
References add_arc(), state::component_states, curr_state, state::equiv_class_state, first_out_arc(), for(), free_arc(), get_free_alt_state(), get_free_state(), arc::insn, state::next_equiv_class_state, next_out_arc(), alt_state::next_sorted_alt_state, NULL, alt_state::state, arc::state_alts, arc::to_state, VLA_PTR_BEGIN, and VLA_PTR_LAST.
Referenced by minimize_DFA().
Definition at line 7712 of file genautomata.c.
References min_issue_delay_pass_states().
Referenced by output_min_issue_delay_table().
Definition at line 7668 of file genautomata.c.
References DECL_INSN_RESERV, first_out_arc(), arc::insn, ainsn::insn_reserv_decl, next_out_arc(), NULL, and arc::to_state.
Referenced by min_issue_delay(), and min_issue_delay_pass_states().
| static void minimize_DFA | ( | automaton_t | automaton | ) | [static] |
Definition at line 6161 of file genautomata.c.
References evaluate_equiv_classes(), merge_states(), pass_states(), set_new_cycle_flags(), VLA_PTR_CREATE, and VLA_PTR_DELETE.
Referenced by build_automaton().
| static int n_sep_els | ( | char * | s, | |
| int | sep, | |||
| int | par_flag | |||
| ) | [static] |
| static void NDFA_to_DFA | ( | automaton_t | automaton | ) | [static] |
Definition at line 5749 of file genautomata.c.
References insn_reserv_decl::arcs_marked_by_insn, create_composed_state(), DECL_INSN_RESERV, description::decls, description::decls_num, form_arcs_marked_by_insn(), i, state::it_was_placed_in_stack_for_DFA_forming, decl::mode, VLA_PTR, VLA_PTR_ADD, VLA_PTR_CREATE, VLA_PTR_DELETE, VLA_PTR_LENGTH, and VLA_PTR_SHORTEN.
Referenced by build_automaton().
Definition at line 4276 of file genautomata.c.
References arc::next_out_arc.
Referenced by clear_arc_insns_equiv_num(), create_composed_state(), find_arc(), form_arcs_marked_by_insn(), form_important_insn_automata_lists(), incr_states_and_arcs_nums(), longest_path_length(), merge_states(), min_issue_delay_pass_states(), out_state_arcs_num(), output_dead_lock_vect(), output_state_alts_table(), output_state_arcs(), output_trans_table(), pass_state_graph(), process_state_for_insn_equiv_partition(), set_new_cycle_flags(), set_out_arc_insns_equiv_num(), and state_is_differed().
| static char* next_sep_el | ( | char ** | pstr, | |
| int | sep, | |||
| int | par_flag | |||
| ) | [static] |
Definition at line 1504 of file genautomata.c.
References ISSPACE, NULL, obstack_1grow, obstack_base, obstack_finish, and p.
Referenced by get_str_vect().
| static int out_state_arcs_num | ( | state_t | state | ) | [static] |
Definition at line 7493 of file genautomata.c.
References abort, ainsn::first_ainsn_with_given_equialence_num, first_out_arc(), arc::insn, next_out_arc(), NULL, and result.
Referenced by compare_transition_els_num().
| static void output_automata_list_min_issue_delay_code | ( | automata_list_el_t | automata_list | ) | [static] |
Definition at line 8033 of file genautomata.c.
References automata_list_el::automaton, CHIP_PARAMETER_NAME, fprintf(), automaton::insn_equiv_classes_num, INTERNAL_INSN_CODE_NAME, automaton::min_issue_delay_table_compression_factor, automata_list_el::next_automata_list_el, NULL, output_chip_member_name(), output_min_issue_delay_vect_name(), output_translate_vect_name(), RESULT_VARIABLE_NAME, and TEMPORARY_VARIABLE_NAME.
Referenced by output_internal_min_issue_delay_func().
| static void output_automata_list_state_alts_code | ( | automata_list_el_t | automata_list | ) | [static] |
Definition at line 8300 of file genautomata.c.
References automata_list_el::automaton, CHIP_PARAMETER_NAME, comb_vect_p(), fprintf(), automaton::insn_equiv_classes_num, INTERNAL_INSN_CODE_NAME, automata_list_el::next_automata_list_el, NULL, output_chip_member_name(), output_state_alts_base_vect_name(), output_state_alts_check_vect_name(), output_state_alts_comb_vect_name(), output_state_alts_full_vect_name(), output_translate_vect_name(), RESULT_VARIABLE_NAME, automaton::state_alts_table, and TEMPORARY_VARIABLE_NAME.
Referenced by output_internal_state_alts_func().
| static void output_automata_list_transition_code | ( | automata_list_el_t | automata_list | ) | [static] |
Definition at line 8108 of file genautomata.c.
References automaton::achieved_states_num, automata_list_el::automaton, CHIP_PARAMETER_NAME, comb_vect_p(), fprintf(), automaton::insn_equiv_classes_num, INTERNAL_INSN_CODE_NAME, INTERNAL_MIN_ISSUE_DELAY_FUNC_NAME, automata_list_el::next_automata_list_el, NULL, output_chip_member_name(), output_state_member_type(), output_temp_chip_member_name(), output_trans_base_vect_name(), output_trans_check_vect_name(), output_trans_comb_vect_name(), output_trans_full_vect_name(), output_translate_vect_name(), TEMPORARY_VARIABLE_NAME, and automaton::trans_table.
Referenced by output_internal_trans_func().
Definition at line 9068 of file genautomata.c.
References description::first_automaton, fprintf(), automaton::next_automaton, NULL, output_automaton_name(), output_automaton_units(), and pass_states().
Referenced by write_automata().
| static void output_automaton_name | ( | FILE * | f, | |
| automaton_t | automaton | |||
| ) | [static] |
Definition at line 8870 of file genautomata.c.
References automaton::automaton_order_num, automaton::corresponding_automaton_decl, fprintf(), automaton_decl::name, and NULL.
Referenced by output_automaton_descriptions(), and output_statistics().
| static void output_automaton_units | ( | automaton_t | automaton | ) | [static] |
Definition at line 8886 of file genautomata.c.
References DECL_UNIT, description::decls, description::decls_num, fprintf(), i, MAX_LINE_LENGTH, decl::mode, and strlen().
Referenced by output_automaton_descriptions().
Definition at line 7234 of file genautomata.c.
References CHIP_NAME, description::first_automaton, fprintf(), automaton::next_automaton, NULL, output_chip_member_name(), and output_state_member_type().
Referenced by write_automata().
| static void output_chip_member_name | ( | FILE * | f, | |
| automaton_t | automaton | |||
| ) | [static] |
Definition at line 6932 of file genautomata.c.
References automaton::automaton_order_num, automaton::corresponding_automaton_decl, fprintf(), automaton_decl::name, and NULL.
Referenced by output_automata_list_min_issue_delay_code(), output_automata_list_state_alts_code(), output_automata_list_transition_code(), output_chip_definitions(), output_cpu_unit_reservation_p(), output_internal_dead_lock_func(), and output_temp_chip_member_name().
Definition at line 8720 of file genautomata.c.
References CHIP_NAME, CPU_CODE_PARAMETER_NAME, CPU_UNIT_RESERVATION_P_FUNC_NAME, description::first_automaton, fprintf(), automaton::next_automaton, NULL, output_chip_member_name(), output_reserved_units_table_name(), description::query_units_num, STATE_NAME, and STATE_TYPE_NAME.
Referenced by write_automata().
| static void output_cycle_reservs | ( | FILE * | f, | |
| reserv_sets_t | reservs, | |||
| int | start_cycle, | |||
| int | repetition_num | |||
| ) | [static] |
Definition at line 3846 of file genautomata.c.
References abort, CHAR_BIT, fprintf(), NOTHING_NAME, TEST_BIT, and description::units_num.
Referenced by output_reserv_sets().
Definition at line 8442 of file genautomata.c.
References DEAD_LOCK_FUNC_NAME, fprintf(), INTERNAL_DEAD_LOCK_FUNC_NAME, STATE_NAME, and STATE_TYPE_NAME.
Referenced by write_automata().
| static void output_dead_lock_vect | ( | automaton_t | automaton | ) | [static] |
Definition at line 7827 of file genautomata.c.
References abort, add_states_vect_el(), DECL_INSN_RESERV, first_out_arc(), fprintf(), arc::insn, ainsn::insn_reserv_decl, next_out_arc(), NULL, output_dead_lock_vect_name(), output_range_type(), output_vect(), pass_states(), VLA_HWINT, VLA_HWINT_BEGIN, VLA_HWINT_CREATE, VLA_HWINT_DELETE, VLA_HWINT_EXPAND, VLA_HWINT_LENGTH, VLA_PTR_BEGIN, VLA_PTR_CREATE, VLA_PTR_DELETE, and VLA_PTR_LAST.
Referenced by output_tables().
| static void output_dead_lock_vect_name | ( | FILE * | f, | |
| automaton_t | automaton | |||
| ) | [static] |
Definition at line 7094 of file genautomata.c.
References automaton::automaton_order_num, automaton::corresponding_automaton_decl, fprintf(), automaton_decl::name, and NULL.
Referenced by output_dead_lock_vect(), and output_internal_dead_lock_func().
Definition at line 8804 of file genautomata.c.
References DECL_BYPASS, DECL_INSN_RESERV, DECL_RESERV, DECL_UNIT, description::decls, description::decls_num, fprintf(), i, bypass_decl::in_insn_name, bypass_decl::latency, decl::mode, NULL, bypass_decl::out_insn_name, output_regexp(), output_unit_set_el_list(), and print_rtl().
Referenced by write_automata().
Definition at line 8766 of file genautomata.c.
References DFA_FINISH_FUNC_NAME, DFA_INSN_CODES_VARIABLE_NAME, and fprintf().
Referenced by write_automata().
Definition at line 8249 of file genautomata.c.
References DFA_INSN_CODE_FUNC_NAME, DFA_INSN_CODES_LENGTH_VARIABLE_NAME, DFA_INSN_CODES_VARIABLE_NAME, fprintf(), INSN_PARAMETER_NAME, INTERNAL_DFA_INSN_CODE_FUNC_NAME, INTERNAL_INSN_CODE_NAME, and TEMPORARY_VARIABLE_NAME.
Referenced by write_automata().
Definition at line 6877 of file genautomata.c.
References abort, description::first_automaton, fprintf(), MAX_DFA_ISSUE_RATE_VAR_NAME, automaton::next_automaton, NULL, ON_THE_PATH, pass_states(), process_state_longest_path_length(), and UNDEFINED_LONGEST_PATH_LENGTH.
Referenced by write_automata().
Definition at line 8749 of file genautomata.c.
References DFA_INSN_CODES_LENGTH_VARIABLE_NAME, DFA_INSN_CODES_VARIABLE_NAME, DFA_START_FUNC_NAME, fprintf(), and I_VARIABLE_NAME.
Referenced by write_automata().
Definition at line 8669 of file genautomata.c.
References CMP_VARIABLE_NAME, CODE_MEMBER_NAME, CPU_UNIT_NAME_PARAMETER_NAME, fprintf(), free(), GET_CPU_UNIT_CODE_FUNC_NAME, HIGH_VARIABLE_NAME, i, LOW_VARIABLE_NAME, memcpy, MIDDLE_VARIABLE_NAME, NAME_CODE_STRUCT_NAME, NAME_CODE_TABLE_NAME, NAME_MEMBER_NAME, qsort(), units, units_cmp(), description::units_num, and xmalloc().
Referenced by write_automata().
| static void output_insn_code_cases | ( | output_automata_list_code | ) | [static] |
Definition at line 7992 of file genautomata.c.
References DECL_INSN_RESERV, description::decls, description::decls_num, FALSE, fprintf(), i, insn_reserv_decl::important_automata_list, insn_reserv_decl::insn_num, decl::mode, insn_reserv_decl::processed_p, and TRUE.
Referenced by output_internal_min_issue_delay_func(), output_internal_state_alts_func(), and output_internal_trans_func().
Definition at line 8574 of file genautomata.c.
References fprintf(), INSN2_PARAMETER_NAME, INSN_LATENCY_FUNC_NAME, INSN_PARAMETER_NAME, INTERNAL_INSN2_CODE_NAME, INTERNAL_INSN_CODE_NAME, INTERNAL_INSN_LATENCY_FUNC_NAME, and output_internal_insn_code_evaluation().
Referenced by write_automata().
Definition at line 8417 of file genautomata.c.
References CHIP_NAME, CHIP_PARAMETER_NAME, description::first_automaton, fprintf(), INTERNAL_DEAD_LOCK_FUNC_NAME, automaton::next_automaton, NULL, output_chip_member_name(), and output_dead_lock_vect_name().
Referenced by write_automata().
| static void output_internal_insn_code_evaluation | ( | char * | insn_name, | |
| const char * | insn_code_name, | |||
| int | code | |||
| ) | const [static] |
Definition at line 8232 of file genautomata.c.
References ADVANCE_CYCLE_VALUE_NAME, DFA_INSN_CODE_FUNC_NAME, and fprintf().
Referenced by output_insn_latency_func(), output_min_insn_conflict_delay_func(), output_state_alts_func(), and output_trans_func().
Definition at line 8511 of file genautomata.c.
References ADVANCE_CYCLE_VALUE_NAME, bypass_decl::bypass_guard_name, DECL_INSN_RESERV, description::decls, description::decls_num, fprintf(), i, bypass_decl::in_insn_reserv, INSN2_PARAMETER_NAME, insn_reserv_decl::insn_num, INSN_PARAMETER_NAME, INTERNAL_INSN2_CODE_NAME, INTERNAL_INSN_CODE_NAME, INTERNAL_INSN_LATENCY_FUNC_NAME, bypass_decl::latency, decl::mode, bypass_decl::next, and NULL.
Referenced by write_automata().
Definition at line 8085 of file genautomata.c.
References CHIP_NAME, CHIP_PARAMETER_NAME, fprintf(), INTERNAL_INSN_CODE_NAME, INTERNAL_MIN_ISSUE_DELAY_FUNC_NAME, output_automata_list_min_issue_delay_code(), output_insn_code_cases(), RESULT_VARIABLE_NAME, and TEMPORARY_VARIABLE_NAME.
Referenced by write_automata().
Definition at line 8452 of file genautomata.c.
References CHIP_NAME, CHIP_PARAMETER_NAME, fprintf(), and INTERNAL_RESET_FUNC_NAME.
Referenced by write_automata().
Definition at line 8361 of file genautomata.c.
References CHIP_NAME, CHIP_PARAMETER_NAME, fprintf(), INTERNAL_INSN_CODE_NAME, INTERNAL_STATE_ALTS_FUNC_NAME, output_automata_list_state_alts_code(), output_insn_code_cases(), and RESULT_VARIABLE_NAME.
Referenced by write_automata().
Definition at line 8202 of file genautomata.c.
References CHIP_NAME, CHIP_PARAMETER_NAME, fprintf(), INTERNAL_INSN_CODE_NAME, INTERNAL_TRANSITION_FUNC_NAME, output_automata_list_transition_code(), output_insn_code_cases(), and TEMPORARY_VARIABLE_NAME.
Referenced by write_automata().
Definition at line 7959 of file genautomata.c.
References abort, DECL_BYPASS, DECL_INSN_RESERV, description::decls, description::decls_num, fprintf(), i, max, description::max_insn_reserv_cycles, and decl::mode.
Referenced by write_automata().
Definition at line 8483 of file genautomata.c.
References CHIP_NAME, fprintf(), INSN2_PARAMETER_NAME, INSN_PARAMETER_NAME, INTERNAL_INSN2_CODE_NAME, INTERNAL_INSN_CODE_NAME, INTERNAL_MIN_ISSUE_DELAY_FUNC_NAME, INTERNAL_RESET_FUNC_NAME, INTERNAL_TRANSITION_FUNC_NAME, MIN_INSN_CONFLICT_DELAY_FUNC_NAME, output_internal_insn_code_evaluation(), STATE_NAME, and STATE_TYPE_NAME.
Referenced by write_automata().
Definition at line 8396 of file genautomata.c.
References ADVANCE_CYCLE_VALUE_NAME, DFA_INSN_CODE_FUNC_NAME, fprintf(), INSN_PARAMETER_NAME, INTERNAL_INSN_CODE_NAME, INTERNAL_MIN_ISSUE_DELAY_FUNC_NAME, MIN_ISSUE_DELAY_FUNC_NAME, STATE_NAME, and STATE_TYPE_NAME.
Referenced by write_automata().
| static void output_min_issue_delay_table | ( | automaton_t | automaton | ) | [static] |
Definition at line 7733 of file genautomata.c.
References add_states_vect_el(), ainsn::first_ainsn_with_given_equialence_num, for(), fprintf(), i, ainsn::insn_equiv_class_num, min_issue_delay(), ainsn::next_ainsn, NULL, output_min_issue_delay_vect_name(), output_range_type(), output_vect(), pass_states(), VLA_HWINT, VLA_HWINT_BEGIN, VLA_HWINT_CREATE, VLA_HWINT_DELETE, VLA_HWINT_EXPAND, VLA_HWINT_LENGTH, VLA_PTR_BEGIN, VLA_PTR_CREATE, VLA_PTR_DELETE, and VLA_PTR_LAST.
Referenced by output_tables().
| static void output_min_issue_delay_vect_name | ( | FILE * | f, | |
| automaton_t | automaton | |||
| ) | [static] |
Definition at line 7081 of file genautomata.c.
References automaton::automaton_order_num, automaton::corresponding_automaton_decl, fprintf(), automaton_decl::name, and NULL.
Referenced by output_automata_list_min_issue_delay_code(), and output_min_issue_delay_table().
Definition at line 8593 of file genautomata.c.
References ADVANCE_CYCLE_VALUE_NAME, DECL_INSN_RESERV, description::decls, description::decls_num, DFA_INSN_CODE_FUNC_NAME, FILE_PARAMETER_NAME, finish_regexp_representation(), fprintf(), i, INSN_PARAMETER_NAME, INTERNAL_INSN_CODE_NAME, decl::mode, NOTHING_NAME, PRINT_RESERVATION_FUNC_NAME, and regexp_representation().
Referenced by write_automata().
| static void output_range_type | ( | FILE * | f, | |
| long int | min_range_value, | |||
| long int | max_range_value | |||
| ) | [static] |
Definition at line 6791 of file genautomata.c.
References fprintf().
Referenced by output_dead_lock_vect(), output_min_issue_delay_table(), output_reserved_units_table(), output_state_ainsn_table(), output_state_member_type(), and output_translate_vect().
Definition at line 8779 of file genautomata.c.
References finish_regexp_representation(), fprintf(), and regexp_representation().
Referenced by output_description().
| static void output_reserv_sets | ( | FILE * | f, | |
| reserv_sets_t | reservs | |||
| ) | [static] |
Definition at line 3889 of file genautomata.c.
References fprintf(), memcmp, and output_cycle_reservs().
Referenced by output_state().
| static void output_reserved_units_table | ( | automaton_t | automaton | ) | [static] |
Definition at line 7873 of file genautomata.c.
References add_states_vect_el(), fprintf(), i, output_range_type(), output_reserved_units_table_name(), output_vect(), pass_states(), unit_decl::query_num, description::query_units_num, test_unit_reserv(), description::units_num, VLA_HWINT, VLA_HWINT_BEGIN, VLA_HWINT_CREATE, VLA_HWINT_DELETE, VLA_HWINT_EXPAND, VLA_HWINT_LENGTH, VLA_PTR_BEGIN, VLA_PTR_CREATE, VLA_PTR_DELETE, and VLA_PTR_LAST.
Referenced by output_tables().
| static void output_reserved_units_table_name | ( | FILE * | f, | |
| automaton_t | automaton | |||
| ) | [static] |
Definition at line 7106 of file genautomata.c.
References automaton::automaton_order_num, automaton::corresponding_automaton_decl, fprintf(), automaton_decl::name, and NULL.
Referenced by output_cpu_unit_reservation_p(), and output_reserved_units_table().
Definition at line 8473 of file genautomata.c.
References fprintf(), INTERNAL_RESET_FUNC_NAME, RESET_FUNC_NAME, STATE_NAME, and STATE_TYPE_NAME.
Referenced by write_automata().
Definition at line 8465 of file genautomata.c.
References CHIP_NAME, fprintf(), and SIZE_FUNC_NAME.
Referenced by write_automata().
| static void output_state | ( | state_t | state | ) | [static] |
Definition at line 9039 of file genautomata.c.
References add_state_reservs(), fprintf(), output_reserv_sets(), output_state_arcs(), qsort(), remove_state_duplicate_reservs(), state_reservs_cmp(), VLA_PTR_BEGIN, VLA_PTR_CREATE, VLA_PTR_DELETE, VLA_PTR_LAST, and VLA_PTR_LENGTH.
| static void output_state_ainsn_table | ( | state_ainsn_table_t | tab, | |
| char * | table_name, | |||
| void * | output_full_vect_name_func, | |||
| void * | output_comb_vect_name_func, | |||
| void * | output_check_vect_name_func, | |||
| void * | output_base_vect_name_func | |||
| ) | [static] |
Definition at line 7333 of file genautomata.c.
References comb_vect_p(), fprintf(), output_range_type(), output_vect(), VLA_HWINT_BEGIN, and VLA_HWINT_LENGTH.
Referenced by output_state_alts_table(), and output_trans_table().
| static void output_state_alts_base_vect_name | ( | FILE * | f, | |
| automaton_t | automaton | |||
| ) | [static] |
Definition at line 7068 of file genautomata.c.
References automaton::automaton_order_num, automaton::corresponding_automaton_decl, fprintf(), automaton_decl::name, and NULL.
Referenced by output_automata_list_state_alts_code(), and output_state_alts_table().
| static void output_state_alts_check_vect_name | ( | FILE * | f, | |
| automaton_t | automaton | |||
| ) | [static] |
Definition at line 7054 of file genautomata.c.
References automaton::automaton_order_num, automaton::corresponding_automaton_decl, fprintf(), automaton_decl::name, and NULL.
Referenced by output_automata_list_state_alts_code(), and output_state_alts_table().
| static void output_state_alts_comb_vect_name | ( | FILE * | f, | |
| automaton_t | automaton | |||
| ) | [static] |
Definition at line 7040 of file genautomata.c.
References automaton::automaton_order_num, automaton::corresponding_automaton_decl, fprintf(), automaton_decl::name, and NULL.
Referenced by output_automata_list_state_alts_code(), and output_state_alts_table().
| static void output_state_alts_full_vect_name | ( | FILE * | f, | |
| automaton_t | automaton | |||
| ) | [static] |
Definition at line 7026 of file genautomata.c.
References automaton::automaton_order_num, automaton::corresponding_automaton_decl, fprintf(), automaton_decl::name, and NULL.
Referenced by output_automata_list_state_alts_code(), and output_state_alts_table().
Definition at line 8382 of file genautomata.c.
References fprintf(), INSN_PARAMETER_NAME, INTERNAL_INSN_CODE_NAME, INTERNAL_STATE_ALTS_FUNC_NAME, output_internal_insn_code_evaluation(), STATE_ALTS_FUNC_NAME, STATE_NAME, and STATE_TYPE_NAME.
Referenced by write_automata().
| static void output_state_alts_table | ( | automaton_t | automaton | ) | [static] |
Definition at line 7614 of file genautomata.c.
References abort, add_states_vect_el(), add_vect(), add_vect_el(), compare_transition_els_num(), create_state_ainsn_table(), ainsn::first_ainsn_with_given_equialence_num, first_out_arc(), arc::insn, next_out_arc(), NULL, output_state_ainsn_table(), output_state_alts_base_vect_name(), output_state_alts_check_vect_name(), output_state_alts_comb_vect_name(), output_state_alts_full_vect_name(), pass_states(), qsort(), arc::state_alts, VLA_HWINT_BEGIN, VLA_HWINT_CREATE, VLA_HWINT_DELETE, VLA_HWINT_LENGTH, VLA_HWINT_NULLIFY, VLA_PTR_BEGIN, VLA_PTR_CREATE, VLA_PTR_DELETE, VLA_PTR_LAST, and VLA_PTR_LENGTH.
Referenced by output_tables().
Definition at line 8953 of file genautomata.c.
References abort, ainsn::first_insn_with_same_reservs, first_out_arc(), fprintf(), arc::insn, ainsn::insn_equiv_class_num, insn_name(), ainsn::insn_reserv_decl, MAX_LINE_LENGTH, insn_reserv_decl::name, next_out_arc(), ainsn::next_same_reservs_insn, NULL, state::order_state_num, arc::state_alts, strlen(), and arc::to_state.
Referenced by output_state().
| static void output_state_member_type | ( | FILE * | f, | |
| automaton_t | automaton | |||
| ) | [static] |
Definition at line 7224 of file genautomata.c.
References automaton::achieved_states_num, and output_range_type().
Referenced by output_automata_list_transition_code(), and output_chip_definitions().
Definition at line 9092 of file genautomata.c.
References state_ainsn_table::comb_vect, comb_vect_p(), automaton::DFA_arcs_num, automaton::DFA_states_num, description::first_automaton, fprintf(), state_ainsn_table::full_vect, automaton::insn_equiv_classes_num, description::insns_num, automaton::min_issue_delay_table_compression_factor, automaton::minimal_DFA_arcs_num, automaton::minimal_DFA_states_num, automaton::NDFA_arcs_num, automaton::NDFA_states_num, automaton::next_automaton, NULL, output_automaton_name(), automaton::state_alts_table, automaton::trans_table, and VLA_HWINT_LENGTH.
Referenced by write_automata().
Definition at line 7923 of file genautomata.c.
References ADVANCE_CYCLE_VALUE_NAME, AUTOMATON_STATE_ALTS_MACRO_NAME, CPU_UNITS_QUERY_MACRO_NAME, DECL_INSN_RESERV, description::first_automaton, fprintf(), initiate_min_issue_delay_pass_states(), insn_reserv_decl::insn_num, automaton::next_automaton, NULL, output_dead_lock_vect(), output_min_issue_delay_table(), output_reserved_units_table(), output_state_alts_table(), output_trans_table(), and output_translate_vect().
Referenced by write_automata().
| static void output_temp_chip_member_name | ( | FILE * | f, | |
| automaton_t | automaton | |||
| ) | [static] |
Definition at line 6946 of file genautomata.c.
References fprintf(), and output_chip_member_name().
Referenced by output_automata_list_transition_code().
Definition at line 9167 of file genautomata.c.
References fprintf(), and print_active_time().
Referenced by write_automata().
| static void output_trans_base_vect_name | ( | FILE * | f, | |
| automaton_t | automaton | |||
| ) | [static] |
Definition at line 7014 of file genautomata.c.
References automaton::automaton_order_num, automaton::corresponding_automaton_decl, fprintf(), automaton_decl::name, and NULL.
Referenced by output_automata_list_transition_code(), and output_trans_table().
| static void output_trans_check_vect_name | ( | FILE * | f, | |
| automaton_t | automaton | |||
| ) | [static] |
Definition at line 7001 of file genautomata.c.
References automaton::automaton_order_num, automaton::corresponding_automaton_decl, fprintf(), automaton_decl::name, and NULL.
Referenced by output_automata_list_transition_code(), and output_trans_table().
| static void output_trans_comb_vect_name | ( | FILE * | f, | |
| automaton_t | automaton | |||
| ) | [static] |
Definition at line 6987 of file genautomata.c.
References automaton::automaton_order_num, automaton::corresponding_automaton_decl, fprintf(), automaton_decl::name, and NULL.
Referenced by output_automata_list_transition_code(), and output_trans_table().
| static void output_trans_full_vect_name | ( | FILE * | f, | |
| automaton_t | automaton | |||
| ) | [static] |
Definition at line 6973 of file genautomata.c.
References automaton::automaton_order_num, automaton::corresponding_automaton_decl, fprintf(), automaton_decl::name, and NULL.
Referenced by output_automata_list_transition_code(), and output_trans_table().
Definition at line 8285 of file genautomata.c.
References fprintf(), INSN_PARAMETER_NAME, INTERNAL_INSN_CODE_NAME, INTERNAL_TRANSITION_FUNC_NAME, output_internal_insn_code_evaluation(), STATE_NAME, STATE_TYPE_NAME, and TRANSITION_FUNC_NAME.
Referenced by write_automata().
| static void output_trans_table | ( | automaton_t | automaton | ) | [static] |
Definition at line 7565 of file genautomata.c.
References abort, add_states_vect_el(), add_vect(), add_vect_el(), compare_transition_els_num(), create_state_ainsn_table(), ainsn::first_ainsn_with_given_equialence_num, first_out_arc(), arc::insn, next_out_arc(), NULL, state::order_state_num, output_state_ainsn_table(), output_trans_base_vect_name(), output_trans_check_vect_name(), output_trans_comb_vect_name(), output_trans_full_vect_name(), pass_states(), qsort(), arc::to_state, VLA_HWINT_BEGIN, VLA_HWINT_CREATE, VLA_HWINT_DELETE, VLA_HWINT_LENGTH, VLA_HWINT_NULLIFY, VLA_PTR_BEGIN, VLA_PTR_CREATE, VLA_PTR_DELETE, VLA_PTR_LAST, and VLA_PTR_LENGTH.
Referenced by output_tables().
| static void output_translate_vect | ( | automaton_t | automaton | ) | [static] |
Definition at line 7260 of file genautomata.c.
References fprintf(), ainsn::insn_equiv_class_num, insn_reserv_decl::insn_num, ainsn::insn_reserv_decl, description::insns_num, ainsn::next_ainsn, NULL, output_range_type(), output_translate_vect_name(), output_vect(), VLA_HWINT, VLA_HWINT_BEGIN, VLA_HWINT_CREATE, VLA_HWINT_DELETE, VLA_HWINT_EXPAND, and VLA_HWINT_LENGTH.
Referenced by output_tables().
| static void output_translate_vect_name | ( | FILE * | f, | |
| automaton_t | automaton | |||
| ) | [static] |
Definition at line 6961 of file genautomata.c.
References automaton::automaton_order_num, automaton::corresponding_automaton_decl, fprintf(), automaton_decl::name, and NULL.
Referenced by output_automata_list_min_issue_delay_code(), output_automata_list_state_alts_code(), output_automata_list_transition_code(), and output_translate_vect().
| static void output_unit_set_el_list | ( | unit_set_el_t | list | ) | [static] |
Definition at line 8788 of file genautomata.c.
References fprintf(), unit_decl::name, unit_set_el::next_unit_set_el, NULL, and unit_set_el::unit_decl.
Referenced by output_description().
Definition at line 6895 of file genautomata.c.
References fprintf().
Referenced by output_dead_lock_vect(), output_min_issue_delay_table(), output_reserved_units_table(), output_state_ainsn_table(), and output_translate_vect().
| static void set_unit_reserv PARAMS | ( | (reserv_sets_t, int, int) | ) | [static] |
| static int reserv_sets_cmp PARAMS | ( | (reserv_sets_t, reserv_sets_t) | ) | [static] |
| static unsigned reserv_sets_hash_value PARAMS | ( | (reserv_sets_t) | ) | [static] |
| static int alt_states_eq PARAMS | ( | (alt_state_t, alt_state_t) | ) | [static] |
| static int alt_state_cmp PARAMS | ( | (const void *alt_state_ptr_1, const void *alt_state_ptr_2) | ) | [static] |
| static void free_alt_state PARAMS | ( | (alt_state_t) | ) | [static] |
| static int active_time PARAMS | ( | (ticker_t) | ) | [static] |
| static int process_regexp_cycles PARAMS | ( | (regexp_t, int) | ) | [static] |
| static struct bypass_decl* find_bypass PARAMS | ( | (struct bypass_decl *, struct insn_reserv_decl *) | ) | [static, read] |
| static void add_presence_absence PARAMS | ( | (unit_set_el_t, unit_set_el_t, pos_t, int) | ) | [static] |
| static unit_set_el_t process_presence_absence PARAMS | ( | (char **, int, pos_t, int) | ) | [static] |
| static void add_excls PARAMS | ( | (unit_set_el_t, unit_set_el_t, pos_t) | ) | [static] |
Definition at line 77 of file cplus-dem.c.
| static unsigned string_hash PARAMS | ( | (const char *) | ) | [static] |
Definition at line 635 of file mips-tfile.c.
| static regexp_t gen_regexp_el PARAMS | ( | (char *) | ) | [static] |
| static char** get_str_vect PARAMS | ( | (char *, int *, int, int) | ) | [static] |
| static int n_sep_els PARAMS | ( | (char *, int, int) | ) | [static] |
| static char* next_sep_el PARAMS | ( | (char **, int, int) | ) | [static] |
| static char* check_name PARAMS | ( | (char *, pos_t) | ) | [static] |
| static int partition_equiv_class | ( | state_t * | equiv_class_ptr, | |
| int | odd_iteration_flag, | |||
| vla_ptr_t * | next_iteration_classes, | |||
| int * | new_equiv_class_num_ptr | |||
| ) | [static] |
Definition at line 5952 of file genautomata.c.
References abort, clear_arc_insns_equiv_num(), curr_state, state::equiv_class_num_1, state::equiv_class_num_2, state::next_equiv_class_state, NULL, prev_state, set_out_arc_insns_equiv_num(), state_is_differed(), and VLA_PTR_ADD.
Referenced by evaluate_equiv_classes().
Definition at line 5787 of file genautomata.c.
References first_out_arc(), next_out_arc(), NULL, and arc::to_state.
Referenced by pass_state_graph(), and pass_states().
| static void pass_states | ( | automaton_t | automaton, | |
| applied_func | ||||
| ) | [static] |
Definition at line 5806 of file genautomata.c.
References pass_state_graph().
Referenced by count_states_and_arcs(), enumerate_states(), evaluate_equiv_classes(), form_important_insn_automata_lists(), minimize_DFA(), output_automaton_descriptions(), output_dead_lock_vect(), output_dfa_max_issue_rate(), output_min_issue_delay_table(), output_reserved_units_table(), output_state_alts_table(), output_trans_table(), and set_insn_equiv_classes().
Definition at line 3318 of file genautomata.c.
References active_time(), and fprintf().
Referenced by output_time_statistics(), and write_automata().
| static void process_alts_for_forming_states | ( | regexp_t | regexp, | |
| automaton_t | automaton, | |||
| int | inside_oneof_p | |||
| ) | [static] |
Definition at line 5432 of file genautomata.c.
References abort, ainsn::alt_states, finish_forming_alt_state(), get_free_alt_state(), get_free_state(), i, alt_state::next_alt_state, process_seq_for_forming_states(), REGEXP_ONEOF, rm_oneof, and alt_state::state.
Referenced by create_alt_states(), and process_alts_for_forming_states().
Definition at line 2669 of file genautomata.c.
References add_excls(), add_presence_absence(), check_attr_test(), DECL_ABSENCE, DECL_AUTOMATON, DECL_BYPASS, DECL_EXCL, DECL_INSN_RESERV, DECL_PRESENCE, DECL_RESERV, DECL_UNIT, description::decls, description::decls_num, error(), find_automaton_decl(), find_bypass(), find_decl(), find_insn_decl(), i, bypass_decl::in_insn_name, bypass_decl::in_insn_reserv, insert_automaton_decl(), insert_decl(), insert_insn_decl(), description::insns_num, bypass_decl::latency, decl::mode, names, NOTHING_NAME, NULL, bypass_decl::out_insn_name, bypass_decl::out_insn_reserv, decl::pos, process_excls(), process_presence_absence(), strcmp(), description::units_num, and warning.
Referenced by check_all_description().
| static unit_set_el_t process_excls | ( | char ** | names, | |
| int | num, | |||
| excl_pos | ||||
| ) | [static] |
Definition at line 2408 of file genautomata.c.
References create_node(), DECL_UNIT, error(), find_decl(), i, decl::mode, unit_set_el::next_unit_set_el, NULL, and unit_set_el::unit_decl.
Referenced by process_decls().
Definition at line 6312 of file genautomata.c.
References abort, delete_ainsn_from_equiv_class(), insert_ainsn_into_equiv_class(), insn_reserv_decl::insn_num, ainsn::insn_reserv_decl, ainsn::next_equiv_class_insn, next_insn(), NULL, and arc::to_state.
Referenced by process_state_for_insn_equiv_partition().
| static unit_set_el_t process_presence_absence | ( | char ** | names, | |
| int | num, | |||
| req_pos | , | |||
| int | presence_p | |||
| ) | [static] |
Definition at line 2499 of file genautomata.c.
References create_node(), DECL_UNIT, error(), find_decl(), i, decl::mode, unit_set_el::next_unit_set_el, NULL, and unit_set_el::unit_decl.
Referenced by process_decls().
Definition at line 2939 of file genautomata.c.
References abort, create_node(), DECL_RESERV, DECL_UNIT, error(), find_decl(), i, decl::mode, regexp::mode, NULL, regexp::pos, REGEXP_ALLOF, REGEXP_ONEOF, REGEXP_REPEAT, REGEXP_RESERV, REGEXP_SEQUENCE, REGEXP_UNIT, rm_allof, rm_nothing, rm_oneof, rm_repeat, rm_reserv, rm_sequence, and rm_unit.
Referenced by process_regexp(), and process_regexp_decls().
| static int process_regexp_cycles | ( | regexp_t | regexp, | |
| int | start_cycle | |||
| ) | [static] |
Definition at line 3145 of file genautomata.c.
References abort, i, REGEXP_ALLOF, REGEXP_ONEOF, REGEXP_REPEAT, REGEXP_RESERV, REGEXP_SEQUENCE, REGEXP_UNIT, rm_allof, rm_nothing, rm_oneof, rm_repeat, rm_reserv, rm_sequence, and rm_unit.
Referenced by evaluate_max_reserv_cycles(), and process_regexp_cycles().
Definition at line 2995 of file genautomata.c.
References DECL_INSN_RESERV, DECL_RESERV, description::decls, description::decls_num, i, decl::mode, and process_regexp().
Referenced by check_all_description().
| static int process_seq_for_forming_states | ( | regexp_t | regexp, | |
| automaton_t | automaton, | |||
| int | curr_cycle | |||
| ) | [static] |
Definition at line 5357 of file genautomata.c.
References abort, automaton::automaton_order_num, i, NULL, REGEXP_ALLOF, REGEXP_SEQUENCE, REGEXP_UNIT, rm_allof, rm_nothing, rm_sequence, rm_unit, and set_state_reserv().
Referenced by process_alts_for_forming_states(), and process_seq_for_forming_states().
Definition at line 6345 of file genautomata.c.
References first_out_arc(), for(), i, arc::insn, insn_reserv_decl::insn_num, ainsn::insn_reserv_decl, description::insns_num, next_out_arc(), NULL, process_insn_equiv_class(), VLA_PTR_BEGIN, VLA_PTR_CREATE, VLA_PTR_DELETE, and VLA_PTR_EXPAND.
Referenced by set_insn_equiv_classes().
Definition at line 6858 of file genautomata.c.
References longest_path_length().
Referenced by output_dfa_max_issue_rate().
| static void process_unit_to_form_the_same_automaton_unit_lists | ( | regexp_t | unit, | |
| regexp_t | regexp, | |||
| int | cycle | |||
| ) | [static] |
Definition at line 5154 of file genautomata.c.
References abort, i, last, regexp::mode, NULL, REGEXP_ALLOF, REGEXP_ONEOF, REGEXP_SEQUENCE, REGEXP_UNIT, rm_allof, rm_oneof, rm_sequence, rm_unit, and unit_decl::the_same_automaton_unit.
Referenced by form_the_same_automaton_unit_lists_from_regexp().
| static const char* regexp_representation | ( | regexp_t | regexp | ) | [static] |
Definition at line 6761 of file genautomata.c.
References form_regexp(), obstack_1grow, and obstack_base.
Referenced by output_print_reservation_func(), and output_regexp().
Definition at line 5074 of file genautomata.c.
References abort, i, REGEXP_ALLOF, REGEXP_ONEOF, REGEXP_REPEAT, REGEXP_SEQUENCE, rm_allof, rm_nothing, rm_oneof, rm_repeat, rm_sequence, and rm_unit.
Referenced by regexp_transform_func(), and transform_regexp().
Definition at line 4187 of file genautomata.c.
References abort, free_arc(), arc::next_out_arc, and NULL.
Referenced by create_composed_state().
Definition at line 9015 of file genautomata.c.
References NULL, reserv_sets_cmp(), VLA_PTR_BEGIN, VLA_PTR_LAST, and VLA_PTR_SHORTEN.
Referenced by output_state().
| static void reserv_sets_and | ( | reserv_sets_t | result, | |
| reserv_sets_t | operand_1, | |||
| reserv_sets_t | operand_2 | |||
| ) | [static] |
| static int reserv_sets_are_intersected | ( | reserv_sets_t | operand_1, | |
| reserv_sets_t | operand_2 | |||
| ) | [static] |
Definition at line 3739 of file genautomata.c.
References abort, get_excl_set(), get_presence_absence_set(), nonzero_p(), and NULL.
Referenced by intersected_state_reservs_p().
| static int reserv_sets_cmp | ( | reserv_sets_t | reservs_1, | |
| reserv_sets_t | reservs_2 | |||
| ) | [static] |
Definition at line 3652 of file genautomata.c.
Referenced by remove_state_duplicate_reservs(), reserv_sets_eq(), and state_reservs_cmp().
| static int reserv_sets_eq | ( | reserv_sets_t | reservs_1, | |
| reserv_sets_t | reservs_2 | |||
| ) | [static] |
Definition at line 3681 of file genautomata.c.
References reserv_sets_cmp().
Referenced by state_eq_p().
| static unsigned reserv_sets_hash_value | ( | reserv_sets_t | reservs | ) | [static] |
Definition at line 3617 of file genautomata.c.
References CHAR_BIT, i, result, and unsigned.
Referenced by state_hash().
| static void reserv_sets_or | ( | reserv_sets_t | result, | |
| reserv_sets_t | operand_1, | |||
| reserv_sets_t | operand_2 | |||
| ) | [static] |
Definition at line 3806 of file genautomata.c.
Referenced by reserv_sets_are_intersected(), and states_union().
| static void reserv_sets_shift | ( | reserv_sets_t | result, | |
| reserv_sets_t | operand | |||
| ) | [static] |
Definition at line 3792 of file genautomata.c.
References abort, i, and NULL.
Referenced by state_shift().
| static void set_insn_equiv_classes | ( | automaton_t | automaton | ) | [static] |
Definition at line 6368 of file genautomata.c.
References abort, ainsn::first_ainsn_with_given_equialence_num, first_insn, ainsn::first_insn_with_same_reservs, insert_ainsn_into_equiv_class(), ainsn::insn_equiv_class_num, ainsn::next_ainsn, ainsn::next_equiv_class_insn, ainsn::next_same_reservs_insn, NULL, pass_states(), and process_state_for_insn_equiv_partition().
Referenced by create_automata().
Definition at line 6147 of file genautomata.c.
References DECL_INSN_RESERV, first_out_arc(), arc::insn, ainsn::insn_reserv_decl, state::new_cycle_p, next_out_arc(), NULL, and arc::to_state.
Referenced by minimize_DFA().
| static int set_out_arc_insns_equiv_num | ( | state_t | state, | |
| int | odd_iteration_flag | |||
| ) | [static] |
Definition at line 5839 of file genautomata.c.
References abort, insn_reserv_decl::equiv_class_num, state::equiv_class_num_1, state::equiv_class_num_2, first_out_arc(), arc::insn, ainsn::insn_reserv_decl, next_out_arc(), NULL, arc::state_alts, insn_reserv_decl::state_alts, and arc::to_state.
Referenced by partition_equiv_class().
Definition at line 4059 of file genautomata.c.
References set_unit_reserv().
Referenced by process_seq_for_forming_states().
| static void set_unit_reserv | ( | reserv_sets_t | reservs, | |
| int | cycle_num, | |||
| int | unit_num | |||
| ) | [static] |
Definition at line 3691 of file genautomata.c.
References abort, CHAR_BIT, and SET_BIT.
Referenced by form_reservs_matter(), and set_state_reserv().
Definition at line 4012 of file genautomata.c.
References alt_state::next_sorted_alt_state, NULL, reserv_sets_eq(), and alt_state::state.
Referenced by initiate_states().
Definition at line 3986 of file genautomata.c.
References CHAR_BIT, alt_state::next_sorted_alt_state, NULL, reserv_sets_hash_value(), alt_state::state, state::unique_num, and unsigned.
Referenced by initiate_states().
| static int state_is_differed | ( | state_t | state, | |
| int | original_state_out_arcs_num, | |||
| int | odd_iteration_flag | |||
| ) | [static] |
Definition at line 5902 of file genautomata.c.
References insn_reserv_decl::equiv_class_num, state::equiv_class_num_1, state::equiv_class_num_2, first_out_arc(), arc::insn, ainsn::insn_reserv_decl, next_out_arc(), NULL, arc::state_alts, insn_reserv_decl::state_alts, and arc::to_state.
Referenced by partition_equiv_class().
Definition at line 9004 of file genautomata.c.
References reserv_sets_cmp().
Referenced by output_state().
Definition at line 4107 of file genautomata.c.
References free_state(), get_free_state(), insert_state(), reserv_sets_shift(), state::reservs, and result.
Referenced by make_automaton().
Definition at line 4083 of file genautomata.c.
References abort, state::automaton, free_state(), get_free_state(), insert_state(), reserv_sets_or(), state::reservs, and result.
Referenced by make_automaton().
| static unsigned string_hash | ( | char * | string | ) | const [static] |
Definition at line 2078 of file genautomata.c.
References CHAR_BIT, i, and result.
Referenced by automaton_decl_hash(), decl_hash(), and insn_decl_hash().
| static int test_unit_reserv | ( | reserv_sets_t | reservs, | |
| int | cycle_num, | |||
| int | unit_num | |||
| ) | [static] |
Definition at line 3705 of file genautomata.c.
References abort, CHAR_BIT, and TEST_BIT.
Referenced by first_cycle_unit_presence(), and output_reserved_units_table().
Definition at line 3269 of file genautomata.c.
References get_run_time().
Referenced by build_automaton(), create_automata(), expand_automata(), generate(), transform_insn_regexps(), and write_automata().
Definition at line 3278 of file genautomata.c.
References get_run_time().
Referenced by build_automaton(), create_automata(), and write_automata().
Definition at line 4704 of file genautomata.c.
References abort, copy_insn_regexp(), create_node(), i, pos(), REGEXP_REPEAT, REGEXP_SEQUENCE, rm_repeat, and rm_sequence.
Referenced by transform_regexp().
Definition at line 4736 of file genautomata.c.
References abort, copy_insn_regexp(), create_node(), i, regexp::mode, NULL, regexp::pos, REGEXP_ALLOF, REGEXP_ONEOF, REGEXP_SEQUENCE, result, rm_allof, rm_oneof, and rm_sequence.
Referenced by transform_regexp().
Definition at line 4881 of file genautomata.c.
References abort, copy_insn_regexp(), create_node(), i, regexp::mode, NULL, regexp::pos, REGEXP_ALLOF, REGEXP_ONEOF, REGEXP_SEQUENCE, result, rm_allof, rm_oneof, rm_sequence, and rm_unit.
Referenced by transform_regexp().
Definition at line 5120 of file genautomata.c.
References add_advance_cycle_insn_decl(), copy_insn_regexp(), create_ticker(), DECL_INSN_RESERV, description::decls, description::decls_num, fflush(), fprintf(), i, decl::mode, ticker_off(), and transform_regexp().
Referenced by expand_automata().
Definition at line 5103 of file genautomata.c.
References regexp_transform_func(), transform_1(), transform_2(), and transform_3().
Referenced by transform_insn_regexps().
| static alt_state_t uniq_sort_alt_states | ( | alt_state_t | alt_states_list | ) | [static] |
Definition at line 3470 of file genautomata.c.
References alt_state_cmp(), free_alt_state(), i, alt_state::next_alt_state, alt_state::next_sorted_alt_state, NULL, qsort(), result, VLA_PTR_ADD, VLA_PTR_BEGIN, VLA_PTR_CREATE, VLA_PTR_DELETE, VLA_PTR_LENGTH, and VLA_PTR_SHORTEN.
Referenced by create_alt_states(), create_composed_state(), and merge_states().
Definition at line 8639 of file genautomata.c.
References unit_decl::name, and strcmp().
Referenced by output_get_cpu_unit_code_func().
Definition at line 6563 of file genautomata.c.
References DECL_UNIT, description::decls, description::decls_num, i, decl::mode, and NULL.
Referenced by create_automata().
Definition at line 6474 of file genautomata.c.
References abort, compare_max_occ_cycle_nums(), DECL_UNIT, description::decls, description::decls_num, estimate_one_automaton_bound(), for(), i, decl::mode, qsort(), description::units_num, VLA_PTR_ADD, VLA_PTR_BEGIN, VLA_PTR_CREATE, VLA_PTR_DELETE, VLA_PTR_LAST, and VLA_PTR_LENGTH.
Referenced by create_automata().
reserv_sets_t absence_set [static] |
Definition at line 4537 of file genautomata.c.
decl_t advance_cycle_insn_decl [static] |
Definition at line 3366 of file genautomata.c.
vla_ptr_t all_achieved_states [static] |
int allocated_alt_states_num = 0 [static] |
Definition at line 3394 of file genautomata.c.
int allocated_arcs_num = 0 [static] |
Definition at line 4173 of file genautomata.c.
int allocated_states_num = 0 [static] |
Definition at line 3599 of file genautomata.c.
alt_state_t alt_state_being_formed [static] |
Definition at line 5351 of file genautomata.c.
htab_t automata_list_table [static] |
Definition at line 4306 of file genautomata.c.
int automata_num [static] |
Definition at line 3337 of file genautomata.c.
htab_t automaton_decl_table [static] |
Definition at line 2130 of file genautomata.c.
ticker_t automaton_generation_time [static] |
Definition at line 3352 of file genautomata.c.
vla_ptr_t automaton_states [static] |
ticker_t check_time [static] |
Definition at line 3359 of file genautomata.c.
ainsn_t curr_ainsn [static] |
Definition at line 5426 of file genautomata.c.
int curr_counted_arcs_num [static] |
Definition at line 6176 of file genautomata.c.
int curr_counted_states_num [static] |
Definition at line 6175 of file genautomata.c.
int curr_loop_pass_num [static] |
Definition at line 3044 of file genautomata.c.
int curr_state_graph_pass_num [static] |
Definition at line 5782 of file genautomata.c.
int curr_state_order_num [static] |
Definition at line 6244 of file genautomata.c.
int curr_state_pass_num [static] |
Definition at line 7660 of file genautomata.c.
int curr_unique_state_num [static] |
Definition at line 3594 of file genautomata.c.
automata_list_el_t current_automata_list [static] |
Definition at line 4303 of file genautomata.c.
htab_t decl_table [static] |
Definition at line 2342 of file genautomata.c.
Definition at line 1496 of file genautomata.c.
Referenced by c_build_bind_expr(), c_parser_objc_class_instance_variables(), c_parser_struct_declaration(), c_parser_struct_or_union_specifier(), do_nonmember_using_decl(), duplicate_decls(), expand_automata(), gen_automaton(), gen_bypass(), gen_cpu_unit(), gen_excl_set(), gen_insn_reserv(), gen_presence_absence_set(), gen_query_cpu_unit(), gen_reserv(), generate_static_references(), grokdeclarator(), grokparms(), main(), and poplevel().
int els_in_cycle_reserv [static] |
Definition at line 3569 of file genautomata.c.
int els_in_reservs [static] |
Definition at line 3575 of file genautomata.c.
reserv_sets_t empty_reserv [static] |
Definition at line 3585 of file genautomata.c.
ticker_t equiv_time [static] |
Definition at line 3351 of file genautomata.c.
reserv_sets_t excl_set [static] |
Definition at line 4458 of file genautomata.c.
alt_state_t first_free_alt_state [static] |
Definition at line 3389 of file genautomata.c.
arc_t first_free_arc [static] |
Definition at line 4168 of file genautomata.c.
Definition at line 4300 of file genautomata.c.
vla_ptr_t free_states [static] |
Definition at line 3592 of file genautomata.c.
ticker_t generation_time [static] |
Definition at line 3360 of file genautomata.c.
htab_t insn_decl_table [static] |
Definition at line 2235 of file genautomata.c.
int locked_states_num [static] |
Definition at line 7821 of file genautomata.c.
int max_cycles_num [static] |
Definition at line 3564 of file genautomata.c.
int max_dfa_issue_rate [static] |
Definition at line 6852 of file genautomata.c.
ticker_t minimize_time [static] |
Definition at line 3350 of file genautomata.c.
Definition at line 3348 of file genautomata.c.
ticker_t NDFA_to_DFA_time [static] |
Definition at line 3349 of file genautomata.c.
vla_ptr_t output_states_vect [static] |
Definition at line 7551 of file genautomata.c.
Referenced by output_dead_lock_vect(), output_min_issue_delay_table(), output_reserved_units_table(), and output_trans_table().
ticker_t output_time [static] |
Definition at line 3353 of file genautomata.c.
reserv_sets_t presence_set [static] |
Definition at line 4537 of file genautomata.c.
int regexp_transformed_p [static] |
Definition at line 4699 of file genautomata.c.
char* reserv_str [static] |
Definition at line 1876 of file genautomata.c.
state_t state_being_formed [static] |
Definition at line 5348 of file genautomata.c.
vla_ptr_t state_reservs [static] |
Definition at line 8928 of file genautomata.c.
Referenced by output_state(), remove_state_duplicate_reservs(), and VEC().
htab_t state_table [static] |
Definition at line 3588 of file genautomata.c.
unit_decl_t* the_same_automaton_lists [static] |
Definition at line 5146 of file genautomata.c.
ticker_t transform_time [static] |
Definition at line 3347 of file genautomata.c.
int undefined_vect_el_value [static] |
Definition at line 7290 of file genautomata.c.
reserv_sets_t * unit_absence_set_table [static] |
Definition at line 4541 of file genautomata.c.
reserv_sets_t* unit_excl_set_table [static] |
Definition at line 4461 of file genautomata.c.
reserv_sets_t* unit_presence_set_table [static] |
Definition at line 4541 of file genautomata.c.
unit_decl_t* units_array [static] |
Definition at line 3582 of file genautomata.c.
vla_ptr_t units_container [static] |
Definition at line 3579 of file genautomata.c.
struct decl work_automaton_decl [static] |
Definition at line 2152 of file genautomata.c.
Referenced by find_automaton_decl(), and initiate_automaton_decl_table().