------- Comment #6 from jakub at gcc dot gnu dot org  2010-05-19 20:31 -------
Created an attachment (id=20705)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20705&action=view)
gcc46-pr44199.patch

Untested patch.  Unfortunately, rs6000_emit_stack_tie isn't good enough.
1) it uses frame alias set, but the stack block can have arbitrary alias sets
in
   it and we need to avoid moving all of them over
2) for the frame_pointer_needed case using sp based BLK mem isn't sufficient,
   as then fp based mem can still be scheduled over it.  Using stack_tie insn
   just with hard frame pointer based BLK mem doesn't work either, then the sp
   restore insn can be moved over it.

Could anyone please test this on SPEC to see if it causes meassurable
differences?


-- 


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

Reply via email to