This is the mail archive of the gcc-patches@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]

Re: A new patch for floating point conditional mov on PPo


> The current notice_update_cc0 works with my current patch. If
> there is a change in notice_update_cc0, I think I may find a way
> to accommodate it.

That fact that your patch doesn't seem to break anything doesn't
make it right.  I have illustrated a problem which will occur
in the next few days due to notice_update_cc0 getting smarter.
Changing the integer comparison patterns so that the assembler
output causes cc0 to have completely different meanings (depending
on the next INSN) without reflecting that in the RTL is dangerous.
It is much safer to change tha meaning of cc0 when you output the
actual floating point conditional move.

What you're trying to change isn't currently broken, it's an
optimization.  If you are going to implement this optimization,
then it's worth spending extra time to get it right and to be
conservative so that other optimizations don't break it.  Installing
a change which we know in advance will break just creates extra
work for everyone involved.

> BTW, I also want to fix FP comparison for conditional moves. But
> we have to do it one by one. Let's get over with signed int
> comparison first.

FP comparisons for conditional moves * is not * broken.  I left it
intentionally disabled pending further work on my part.  I plan to
do additional work on the conditional move patterns if you're willing
to wait for it.

-- John
-------------------------------------------------------------------------
|   Feith Systems  |   Voice: 1-215-646-8000  |  Email: john@feith.com  |
|    John Wehle    |     Fax: 1-215-540-5495  |                         |
-------------------------------------------------------------------------



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