md.texi (automata_option): Document collapse-ndfa.
authorBernd Schmidt <bernds@codesourcery.com>
Thu, 25 Aug 2011 10:30:13 +0000 (10:30 +0000)
committerBernd Schmidt <bernds@gcc.gnu.org>
Thu, 25 Aug 2011 10:30:13 +0000 (10:30 +0000)
commit1e6a9047b3d0aefa8b5328108c79fa299c064116
tree2bc05072e284ac9a5ae52a632b1622df1cc4ef4e
parent07f1047289e46cd17161bac16f53c610a7cc2bd8
md.texi (automata_option): Document collapse-ndfa.

* doc/md.texi (automata_option): Document collapse-ndfa.
* genautomata.c (COLLAPSE_OPTION): New macro.
(collapse_flag): New static variable.
(struct description): New member normal_decls_num.
(struct automaton): New members advance_ainsn and collapse_ainsn.
(gen_automata_option): Check for COLLAPSE_OPTION.
(collapse_ndfa_insn_decl): New static variable.
(add_collapse_ndfa_insn_decl, special_decl_p): New functions.
(find_arc): If insn is the collapse-ndfa insn, accept any arc we
find.
(transform_insn_regexps): Call add_collapse_ndfa_insn_decl if
necessary.  Use normal_decls_num rather than decls_num, remove
test for special decls.
(create_alt_states, form_ainsn_with_same_reservs): Use
special_decl_p.
(make_automaton); Likewise.  Use the new advance_cycle_insn member
of struct automaton.
(create_composed_state): Disallow advance-cycle arcs if collapse_flag
is set.
(NDFA_to_DFA): Don't create composed states for the collapse-ndfa
transition.  Create the necessary transitions for it.
(create_ainsns): Return void.  Take an automaton_t argument, and
update its ainsn_list, advance_ainsn and collapse_ainsn members.  All
callers changed.
(COLLAPSE_NDFA_VALUE_NAME): New macro.
(output_tables): Output code to define it.
(output_internal_insn_code_evaluation): Output code to accept
const0_rtx as collapse-ndfa transition.
(output_default_latencies, output_print_reservation_func,
output_print_description): Reorganize loops to use normal_decls_num
as loop bound; remove special case for advance_cycle_insn_decl.
(initiate_automaton_gen): Handle COLLAPSE_OPTION.
(check_automata_insn_issues): Check for collapse_ainsn.
(expand_automate): Allocate sufficient space.  Initialize
normal_decls_num.

From-SVN: r178059
gcc/ChangeLog
gcc/doc/md.texi
gcc/genautomata.c