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



Jakub Jelinek <jakub at gcc dot gnu.org> changed:



           What    |Removed                     |Added

----------------------------------------------------------------------------

             Status|NEW                         |ASSIGNED

         AssignedTo|unassigned at gcc dot       |jakub at gcc dot gnu.org

                   |gnu.org                     |



--- Comment #19 from Jakub Jelinek <jakub at gcc dot gnu.org> 2013-04-25 
09:54:20 UTC ---

Created attachment 29936

  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=29936

gcc49-pr57003.patch



Untested fix.  While we kill_clobbered_value early, for SET in

CALL_INSN_FUNCTION_USAGE we add a value equivalence.  In standard x86_64 ABI

%rdi is invalidated by the call and present in the hard reg set to invalidate,

so it is removed again, and perhaps if there is some target where the first

argument is passed in non-call-clobbered register, the equivalence is correct.



So, what the patch does is in this case apply the clobbers again.  Bernd, does

this look reasonable to you as the author of those changes?

Reply via email to