------- 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