OSDN Git Service

* genautomata.c (output_automata_list_min_issue_delay_code):
authorjiez <jiez@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 7 Jul 2010 16:31:41 +0000 (16:31 +0000)
committerjiez <jiez@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 7 Jul 2010 16:31:41 +0000 (16:31 +0000)
Correctly decompress min_issue_delay.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161923 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/genautomata.c

index 934cacd..832cf30 100644 (file)
@@ -1,3 +1,8 @@
+2010-07-07  Jie Zhang  <jie@codesourcery.com>
+
+       * genautomata.c (output_automata_list_min_issue_delay_code):
+       Correctly decompress min_issue_delay.
+
 2010-07-07  Bernd Schmidt  <bernds@codesourcery.com>
 
        PR rtl-optimization/44404
index a268aa0..91516f8 100644 (file)
@@ -7854,12 +7854,15 @@ output_automata_list_min_issue_delay_code (automata_list_el_t automata_list)
        {
          fprintf (output_file, ") / %d];\n",
                   automaton->min_issue_delay_table_compression_factor);
-         fprintf (output_file, "      %s = (%s >> (8 - (",
+         fprintf (output_file, "      %s = (%s >> (8 - ((",
                   TEMPORARY_VARIABLE_NAME, TEMPORARY_VARIABLE_NAME);
          output_translate_vect_name (output_file, automaton);
+         fprintf (output_file, " [%s] + ", INTERNAL_INSN_CODE_NAME);
+         fprintf (output_file, "%s->", CHIP_PARAMETER_NAME);
+         output_chip_member_name (output_file, automaton);
+         fprintf (output_file, " * %d)", automaton->insn_equiv_classes_num);
          fprintf
-           (output_file, " [%s] %% %d + 1) * %d)) & %d;\n",
-            INTERNAL_INSN_CODE_NAME,
+           (output_file, " %% %d + 1) * %d)) & %d;\n",
             automaton->min_issue_delay_table_compression_factor,
             8 / automaton->min_issue_delay_table_compression_factor,
             (1 << (8 / automaton->min_issue_delay_table_compression_factor))