diff options
author | Uros Bizjak <uros@gcc.gnu.org> | 2009-03-02 14:46:05 +0100 |
---|---|---|
committer | Uros Bizjak <uros@gcc.gnu.org> | 2009-03-02 14:46:05 +0100 |
commit | 962aae340f692f1c0a149eeb7211ba2b4037db74 (patch) | |
tree | 7776c49e7d22c94811de40e31df9f71518871db1 | |
parent | 6dfb529ce2820d176b3f4c637a23544998377e39 (diff) | |
download | gcc-962aae340f692f1c0a149eeb7211ba2b4037db74.zip gcc-962aae340f692f1c0a149eeb7211ba2b4037db74.tar.gz gcc-962aae340f692f1c0a149eeb7211ba2b4037db74.tar.bz2 |
i386.h (CONDITIONAL_REGISTER_USAGE): Do not copy reg_class_contents of FLOAT_REGS into a temporary.
* config/i386/i386.h (CONDITIONAL_REGISTER_USAGE): Do not copy
reg_class_contents of FLOAT_REGS into a temporary.
From-SVN: r144542
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/config/i386/i386.h | 14 |
2 files changed, 10 insertions, 11 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 18ebfbf..fdd53c5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ +2009-03-02 Uros Bizjak <ubizjak@gmail.com> + + * config/i386/i386.h (CONDITIONAL_REGISTER_USAGE): Do not copy + reg_class_contents of FLOAT_REGS into a temporary. + 2009-03-02 Richard Guenther <rguenther@suse.de> - Ira Rosen <irar@il.ibm.com> + Ira Rosen <irar@il.ibm.com> PR tree-optimization/39318 * tree-vect-transform.c (vectorizable_call): Transfer the EH region diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h index 3149442..f525044 100644 --- a/gcc/config/i386/i386.h +++ b/gcc/config/i386/i386.h @@ -933,9 +933,7 @@ do { \ } \ j = PIC_OFFSET_TABLE_REGNUM; \ if (j != INVALID_REGNUM) \ - { \ - fixed_regs[j] = call_used_regs[j] = 1; \ - } \ + fixed_regs[j] = call_used_regs[j] = 1; \ if (TARGET_64BIT \ && ((cfun && cfun->machine->call_abi == MS_ABI) \ || (!cfun && DEFAULT_ABI == MS_ABI))) \ @@ -956,13 +954,9 @@ do { \ if (TEST_HARD_REG_BIT (reg_class_contents[(int)SSE_REGS], i)) \ fixed_regs[i] = call_used_regs[i] = 1, reg_names[i] = ""; \ if (! (TARGET_80387 || TARGET_FLOAT_RETURNS_IN_80387)) \ - { \ - HARD_REG_SET x; \ - COPY_HARD_REG_SET (x, reg_class_contents[(int)FLOAT_REGS]); \ - for (i = 0; i < FIRST_PSEUDO_REGISTER; i++) \ - if (TEST_HARD_REG_BIT (x, i)) \ - fixed_regs[i] = call_used_regs[i] = 1, reg_names[i] = ""; \ - } \ + for (i = 0; i < FIRST_PSEUDO_REGISTER; i++) \ + if (TEST_HARD_REG_BIT (reg_class_contents[(int)FLOAT_REGS], i)) \ + fixed_regs[i] = call_used_regs[i] = 1, reg_names[i] = ""; \ if (! TARGET_64BIT) \ { \ for (i = FIRST_REX_INT_REG; i <= LAST_REX_INT_REG; i++) \ |