diff options
author | Uros Bizjak <uros@gcc.gnu.org> | 2013-05-06 16:53:03 +0200 |
---|---|---|
committer | Uros Bizjak <uros@gcc.gnu.org> | 2013-05-06 16:53:03 +0200 |
commit | 27ea9e0635cd6267f9f1b517a6538001c4766be8 (patch) | |
tree | d168ccc60e184e59a5ab15bfe0dff16ec0131083 /gcc/config | |
parent | 287085253193b062f8f023ae0c97dc2623d56214 (diff) | |
download | gcc-27ea9e0635cd6267f9f1b517a6538001c4766be8.zip gcc-27ea9e0635cd6267f9f1b517a6538001c4766be8.tar.gz gcc-27ea9e0635cd6267f9f1b517a6538001c4766be8.tar.bz2 |
re PR target/57106 (-fcompare-debug failure with -O2 -fschedule-insns -funroll-all-loops)
PR target/57106
* config/i386/i386.c (add_parameter_dependencies): Add dependence
between "first_arg" and "insn", not "last" and "insn".
testsuite/ChangeLog:
PR target/57106
* gcc.target/i386/pr57106.c: New test.
From-SVN: r198629
Diffstat (limited to 'gcc/config')
-rw-r--r-- | gcc/config/i386/i386.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index d28a0ff..86439ba 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -24662,7 +24662,7 @@ add_parameter_dependencies (rtx call, rtx head) /* Add output depdendence between two function arguments if chain of output arguments contains likely spilled HW registers. */ if (is_spilled) - add_dependence (last, insn, REG_DEP_OUTPUT); + add_dependence (first_arg, insn, REG_DEP_OUTPUT); first_arg = last = insn; } else @@ -41355,7 +41355,8 @@ ix86_enum_va_list (int idx, const char **pname, tree *ptree) #undef TARGET_SCHED_ADJUST_PRIORITY #define TARGET_SCHED_ADJUST_PRIORITY ix86_adjust_priority #undef TARGET_SCHED_DEPENDENCIES_EVALUATION_HOOK -#define TARGET_SCHED_DEPENDENCIES_EVALUATION_HOOK ix86_dependencies_evaluation_hook +#define TARGET_SCHED_DEPENDENCIES_EVALUATION_HOOK \ + ix86_dependencies_evaluation_hook /* The size of the dispatch window is the total number of bytes of object code allowed in a window. */ |