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]
Other format: [Raw text]

Re: Additional fix for pre-reload schedule on x86 targets.


On Tue, Oct 23, 2012 at 1:38 PM, Yuri Rumyantsev <ysrumyan@gmail.com> wrote:

> 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  <ysrumyan@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.

Please Cc Vladimir on scheduler patches. If he agrees on proposed
approach, I'll just rubberstamp the patch as OK for mainline.

Uros.


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