This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch 6/9] genautomata chainsaw pass 1


Bernd Schmidt wrote:

Zack Weinberg wrote:

Okay, this is entirely tangential cleanups in genautomata and the code
it generates.  MAX_DFA_ISSUE_RATE is used nowhere, so kill it; so
there is no point in emitting a dead_lock_vect full of zeroes for
automata that have none (which is the normal case).  Also,
length_unit_log and max_insn_queue_index are never modified, so make
them const.

zw

* genautomata.c (process_state_longest_path, max_dfa_issue_rate)
(output_dfa_max_issue_rate, locked_states_num): Delete.
(struct automaton): Add locked_states field.
(output_dead_lock_vect): Save number of locked states in
automaton->locked_states. If it is zero, don't print anything.
(output_max_insn_queue_index_def): Define max_insn_queue_index const.
(output_internal_dead_lock_func): Only test the dead_lock_vect
for automata that have locked states.
(output_statistics): Always print the number of locked states for
each automaton. Calculate total number of locked states here.
(write_automata): Don't call output_dfa_max_issue_rate.
* genattrtab.c: Define length_unit_log as a const variable.
* genattr.c: Don't emit MAX_DFA_ISSUE_RATE. Declare
max_insn_queue_index const.
* final.c (length_unit_log): Declare const.
* doc/tm.texi: Remove all references to MAX_DFA_ISSUE_RATE.


This and part 8 probably ought to be reviewed by Vlad. If he's OK with them they are approved.

All the patch is ok for me.


The patch is hard to read because there are no function names in diff. When I wrote the generation of MAX_DFA_ISSUE_RATE, I thought that it could be used in modulo scheduling but it is not used so it can be removed. If somebody needs it, it can be restored again. I like removing zero lock state tables a lot.

Thanks for the patch.

Vlad


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]