This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tree-optimization/15089] [3.4/3.5 Regression] [tree-ssa] local register variable with a specified register is bad


------- Additional Comments From mmitchel at gcc dot gnu dot org  2004-06-23 02:34 -------
Jeff Law writes:

"This code is using the "Variables in Specified Registers" extension
to GCC for local variables.  I'll quote from the GCC manual:

  Local register variables in specific registers do not reserve the
  registers.  The compiler's data flow analysis is capable of
  determining where the specified registers contain live values,
  and where they are available for other uses.  Stores into local
  register variables may be deleted when they appear to be dead
  according to dataflow analysis.  References to local register
  variables may be deleted or moved or simplified.

When __l is used in the asm, the writer of the bugzilla report expects
to see register "r0".  However, the value happens to be hanging around
in a different register so GCC uses that other register instead of
"r0".  Similarly for uses of __i.   The behavior of the compiler is
precisely what I would expect."

Therefore, closing this as INVALID.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |INVALID


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]