OSDN Git Service

* config/soft-fp: New directory. From glibc.
[pf3gnuchains/gcc-fork.git] / gcc / df-scan.c
index fd9e78a..b35c3a4 100644 (file)
@@ -453,7 +453,7 @@ df_rescan_blocks (struct df *df, bitmap blocks)
       for (i = df->num_problems_defined; i; i--)
        {
          bitmap blocks_to_reset = NULL;
-         if (*dflow->problem->reset_fun)
+         if (dflow->problem->reset_fun)
            {
              if (!blocks_to_reset)
                {
@@ -462,7 +462,7 @@ df_rescan_blocks (struct df *df, bitmap blocks)
                  if (df->blocks_to_scan)
                    bitmap_ior_into (blocks_to_reset, df->blocks_to_scan);
                }
-             (*dflow->problem->reset_fun) (dflow, blocks_to_reset);
+             dflow->problem->reset_fun (dflow, blocks_to_reset);
            }
          if (blocks_to_reset)
            BITMAP_FREE (blocks_to_reset);
@@ -549,7 +549,7 @@ df_ref_create (struct df *df, rtx reg, rtx *loc, rtx insn,
 ----------------------------------------------------------------------------*/
 
 
-/* Get the artifical uses for a basic block.  */
+/* Get the artificial uses for a basic block.  */
 
 struct df_ref *
 df_get_artificial_defs (struct df *df, unsigned int bb_index)
@@ -559,7 +559,7 @@ df_get_artificial_defs (struct df *df, unsigned int bb_index)
 }
 
 
-/* Get the artifical uses for a basic block.  */
+/* Get the artificial uses for a basic block.  */
 
 struct df_ref *
 df_get_artificial_uses (struct df *df, unsigned int bb_index)
@@ -797,7 +797,7 @@ df_bb_refs_delete (struct dataflow *dflow, int bb_index)
        }
     }
   
-  /* Get rid of any artifical uses or defs.  */
+  /* Get rid of any artificial uses or defs.  */
   if (bb_info)
     {
       def = bb_info->artificial_defs;
@@ -1116,9 +1116,8 @@ df_def_record_1 (struct dataflow *dflow, rtx x,
     loc = &SET_DEST (x);
   dst = *loc;
 
-  /* Some targets place small structures in registers for
-     return values of functions.  */
-  if (GET_CODE (dst) == PARALLEL && GET_MODE (dst) == BLKmode)
+  /* It is legal to have a set destination be a parallel. */
+  if (GET_CODE (dst) == PARALLEL)
     {
       int i;
 
@@ -1572,7 +1571,8 @@ df_bb_refs_record (struct dataflow *dflow, basic_block bb)
          unsigned regno = EH_RETURN_DATA_REGNO (i);
          if (regno == INVALID_REGNUM)
            break;
-         df_ref_record (dflow, regno_reg_rtx[i], &regno_reg_rtx[i], bb, NULL,
+         df_ref_record (dflow, regno_reg_rtx[regno], &regno_reg_rtx[regno],
+                        bb, NULL,
                         DF_REF_REG_DEF, DF_REF_ARTIFICIAL | DF_REF_AT_TOP,
                         false);
        }
@@ -1599,11 +1599,11 @@ df_bb_refs_record (struct dataflow *dflow, basic_block bb)
       for (i = 0; i < FIRST_PSEUDO_REGISTER; i++)
        if (EH_USES (i))
          df_uses_record (dflow, &regno_reg_rtx[i], 
-                         DF_REF_REG_USE, EXIT_BLOCK_PTR, NULL,
+                         DF_REF_REG_USE, bb, NULL,
                          DF_REF_ARTIFICIAL | DF_REF_AT_TOP);
 #endif
 
-      /* The following code (down thru the arg_pointer seting APPEARS
+      /* The following code (down thru the arg_pointer setting APPEARS
         to be necessary because there is nothing that actually
         describes what the exception handling code may actually need
         to keep alive.  */
@@ -1804,7 +1804,7 @@ df_record_entry_block_defs (struct dataflow * dflow)
 #endif
     }
 
-  (*targetm.live_on_entry) (df->entry_block_defs);
+  targetm.live_on_entry (df->entry_block_defs);
 
   EXECUTE_IF_SET_IN_BITMAP (df->entry_block_defs, 0, i, bi)
     {