~ubuntu-branches/ubuntu/maverick/ghdl/maverick

« back to all changes in this revision

Viewing changes to gcc/gcc/df-scan.c

  • Committer: Bazaar Package Importer
  • Author(s): Wesley J. Landaker
  • Date: 2009-04-02 21:23:07 UTC
  • mfrom: (1.1.11 upstream) (3.2.2 squeeze)
  • Revision ID: james.westby@ubuntu.com-20090402212307-01pkh97q9b3u1vea
Tags: 0.27+svn110+gcc4.3.3+dfsg-1
* Now using gcc-4.3.3
* Updated copyright information
* Added Vcs-Git information
* Updated to policy 3.8.1 

Show diffs side-by-side

added added

removed removed

Lines of Context:
3171
3171
    }
3172
3172
 
3173
3173
  BITMAP_FREE (defs_generated);
3174
 
  return;
 
3174
 
 
3175
#ifdef EH_USES
 
3176
  if ((flags & DF_REF_CONDITIONAL) == 0
 
3177
      && find_reg_note (insn, REG_NORETURN, 0))
 
3178
    {
 
3179
      unsigned int i;
 
3180
      /* This code is putting in an artificial ref for the use at the
 
3181
         BOTTOM of the block with noreturn call, as EH_USES registers need
 
3182
         to be live until epilogue or noreturn call, for debugging purposes
 
3183
         as well as any insns that might throw.  */
 
3184
      for (i = 0; i < FIRST_PSEUDO_REGISTER; i++)
 
3185
        if (EH_USES (i))
 
3186
          df_ref_record (collection_rec, regno_reg_rtx[i],
 
3187
                         NULL, bb, NULL, DF_REF_REG_USE, 0);
 
3188
    }
 
3189
#endif
3175
3190
}
3176
3191
 
3177
3192
/* Collect all refs in the INSN. This function is free of any
3592
3607
  /* These registers are live everywhere.  */
3593
3608
  if (!reload_completed)
3594
3609
    {
3595
 
#ifdef EH_USES
3596
 
      /* The ia-64, the only machine that uses this, does not define these 
3597
 
         until after reload.  */
3598
 
      for (i = 0; i < FIRST_PSEUDO_REGISTER; i++)
3599
 
        if (EH_USES (i))
3600
 
          {
3601
 
            bitmap_set_bit (entry_block_defs, i);
3602
 
          }
3603
 
#endif
3604
 
      
3605
3610
#if FRAME_POINTER_REGNUM != ARG_POINTER_REGNUM
3606
3611
      /* Pseudos with argument area equivalences may require
3607
3612
         reloading via the argument pointer.  */