[Bug rtl-optimization/20972] [4.0/4.1 Regression] Can't describe an early-clobber by an auto-inc

2005-10-13 Thread bonzini at gcc dot gnu dot org


--- Comment #5 from bonzini at gcc dot gnu dot org  2005-10-13 16:01 ---
Maybe you could add a reload_completed split to not use autoincrements if Rd ==
Rn?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20972



[Bug rtl-optimization/20972] [4.0/4.1 Regression] Can't describe an early-clobber by an auto-inc

2005-09-27 Thread mmitchel at gcc dot gnu dot org


-- 
   What|Removed |Added

   Target Milestone|4.0.2   |4.0.3


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20972


[Bug rtl-optimization/20972] [4.0/4.1 Regression] Can't describe an early-clobber by an auto-inc

2005-07-06 Thread mmitchel at gcc dot gnu dot org

--- Additional Comments From mmitchel at gcc dot gnu dot org  2005-07-06 
16:53 ---
Postponed until 4.0.2.

-- 
   What|Removed |Added

   Target Milestone|4.0.1   |4.0.2


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20972


[Bug rtl-optimization/20972] [4.0/4.1 Regression] Can't describe an early-clobber by an auto-inc

2005-05-12 Thread rearnsha at gcc dot gnu dot org

--- Additional Comments From rearnsha at gcc dot gnu dot org  2005-05-12 
11:36 ---
The ARM ARM says that

  STR Rd, [Rn], #4

and 

  STR Rd, [Rn, #4]!

are unpredictable if Rd == Rn.  That is, the auto-inc side effect is permitted
to take place before Rd is read.
 
There's currently no way for a back-end to describe that an auto-inc operation
might be an early-clobber.  The obvious '' in the constraint doesn't work,
causing an abort in find_reloads().

This bug isn't really a regression (the limitation has always been there), but
the vagaries of register allocation means that it is only recently that it's
started doing this (either that, or the assembler has only recently started
whining about it :-).

-- 
   What|Removed |Added

 CC||rearnsha at gcc dot gnu dot
   ||org
  Component|target  |rtl-optimization
   Last reconfirmed|2005-04-12 17:08:16 |2005-05-12 11:36:06
   date||
Summary|[4.0/4.1 Regression]|[4.0/4.1 Regression] Can't
   |Compiler-generated code |describe an early-clobber by
   |produces an assembler   |an auto-inc
   |warning |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20972