------- Additional Comments From wilson at gcc dot gnu dot org  2005-01-14 
04:02 -------
The given testcase fails only without optimization.  It fails because we end up
with an unhandled XFmode move from a general reg to a MEM.  A little more
interesting testcase is to modify testf to return the long double.  This fails
with and without optimization.  Without optimization is the same as before. 
With optimization, we have an unhandled XFmode from a general reg to a pseudo,
which is later allocated to the FP return value register.
                                                                                
So the movxf expander needs to handle a general register source when the
destination can be either a mem or a pseudo.
                                                                                
I attached my modified testcase, and a patch that works for both the optimized
and unoptimized cases.
                                                                                
This is as yet untested, as my IA-64 machine is busy running tests for other 
PRs.


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |wilson at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2005-01-10 15:31:09         |2005-01-14 04:02:58
               date|                            |


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

Reply via email to