Hi All,

This fix is aimed to remove stability issues with using pre-reload
scheduler for x86 targets caused by cross-block motion of function
arguments passed in likely-spilled HW registers. We found one more
issue in a process of more detail testing pre-reload scheduler for all
x86 platforms.

The fix was fully tested on all acceptable suites and gcc
bootstrapping with turned on pre-reload scheduler.

Tested for i386 and x86-64, ok for trunk?

ChangeLog:

2012-10-23  Yuri Rumyantsev  <ysrum...@gmail.com>

        * config/i386/i386.c (insn_is_function_arg) : Add check on CALL
        instruction.
        (ix86_dependencies_evaluation_hook): Insert dependencies in all
        predecessors of call block for non-trivial region avoiding creation
        of loop-carried dependency to avoid cross-block motion of HW registers.

Attachment: i386-pre-reload-scheduler-fix.diff
Description: Binary data

Reply via email to