recog.h (recog_data_d): Remove enabled_alternatives.
authorRichard Sandiford <richard.sandiford@arm.com>
Wed, 22 Oct 2014 12:02:39 +0000 (12:02 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Wed, 22 Oct 2014 12:02:39 +0000 (12:02 +0000)
gcc/
* recog.h (recog_data_d): Remove enabled_alternatives.
* recog.c (extract_insn): Don't set it.
* reload.c (find_reloads): Call get_enabled_alternatives.

From-SVN: r216556

gcc/ChangeLog
gcc/recog.c
gcc/recog.h
gcc/reload.c

index 107afee..6b23954 100644 (file)
@@ -1,5 +1,11 @@
 2014-10-22  Richard Sandiford  <richard.sandiford@arm.com>
 
+       * recog.h (recog_data_d): Remove enabled_alternatives.
+       * recog.c (extract_insn): Don't set it.
+       * reload.c (find_reloads): Call get_enabled_alternatives.
+
+2014-10-22  Richard Sandiford  <richard.sandiford@arm.com>
+
        * recog.h (constrain_operands): Add an alternative_mask parameter.
        (constrain_operands_cached): Likewise.
        (get_preferred_alternatives): Declare new form.
index 5be01cc..1a17510 100644 (file)
@@ -2344,8 +2344,6 @@ extract_insn (rtx_insn *insn)
 
   gcc_assert (recog_data.n_alternatives <= MAX_RECOG_ALTERNATIVES);
 
-  recog_data.enabled_alternatives = get_enabled_alternatives (insn);
-
   recog_data.insn = NULL;
   which_alternative = -1;
 }
index c91f661..0802640 100644 (file)
@@ -250,12 +250,6 @@ struct recog_data_d
   /* True if insn is ASM_OPERANDS.  */
   bool is_asm;
 
-  /* Specifies whether an insn alternative is enabled using the `enabled'
-     attribute in the insn pattern definition.  For back ends not using
-     the `enabled' attribute the bits are always set to 1 in expand_insn.
-     Bits beyond the last alternative are also set to 1.  */
-  alternative_mask enabled_alternatives;
-
   /* In case we are caching, hold insn data was generated for.  */
   rtx insn;
 };
index b8da67d..5f560a9 100644 (file)
@@ -3002,13 +3002,14 @@ find_reloads (rtx_insn *insn, int replace, int ind_levels, int live_known,
 
      First loop over alternatives.  */
 
+  alternative_mask enabled = get_enabled_alternatives (insn);
   for (this_alternative_number = 0;
        this_alternative_number < n_alternatives;
        this_alternative_number++)
     {
       int swapped;
 
-      if (!TEST_BIT (recog_data.enabled_alternatives, this_alternative_number))
+      if (!TEST_BIT (enabled, this_alternative_number))
        {
          int i;