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 middle-end/42588] unnecessary move through x87 stack/local frame for union



------- Comment #1 from pinskia at gcc dot gnu dot org  2010-01-03 06:46 -------
;; __u.__d = __x_1(D);

(insn 6 5 0 t.c:15 (set (subreg:DF (reg/v:DI 60 [ __u ]) 0)
        (reg/v:DF 62 [ __x ])) -1 (nil))

That causes a reload to happen:
Reload 0: reload_out (DF) = (subreg:DF (reg/v:DI 60 [ __u ]) 0)
        FLOAT_REGS, RELOAD_FOR_OUTPUT (opnum = 0)
        reload_out_reg: (subreg:DF (reg/v:DI 60 [ __u ]) 0)
        reload_reg_rtx: (reg:DF 8 st)

I think I might have another bug about this issue before ...


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
           Keywords|                            |missed-optimization
   Last reconfirmed|0000-00-00 00:00:00         |2010-01-03 06:46:29
               date|                            |


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


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