This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/63483] Scheduler performs Invalid move of aliased memory reference
- From: "uros at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 20 Feb 2015 12:04:53 +0000
- Subject: [Bug target/63483] Scheduler performs Invalid move of aliased memory reference
- Auto-submitted: auto-generated
- References: <bug-63483-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63483
--- Comment #23 from uros at gcc dot gnu.org ---
Author: uros
Date: Fri Feb 20 12:04:21 2015
New Revision: 220854
URL: https://gcc.gnu.org/viewcvs?rev=220854&root=gcc&view=rev
Log:
Backport from mainline
2015-01-22 Wei Mi <wmi@google.com>
PR rtl-optimization/64557
* dse.c (record_store): Call get_addr for mem_addr.
(check_mem_read_rtx): Likewise.
Backport from mainline
2014-10-20 Uros Bizjak <ubizjak@gmail.com>
* varasm.c (const_alias_set): Remove.
(init_varasm_once): Remove initialization of const_alias_set.
(build_constant_desc): Do not set alias set to const_alias_set.
Backport from mainline
2014-10-14 Uros Bizjak <ubizjak@gmail.com>
PR rtl-optimization/63475
* alias.c (true_dependence_1): Always use get_addr to extract
true address operands from x_addr and mem_addr. Use extracted
address operands to check for references with alignment ANDs.
Use extracted address operands with find_base_term and
base_alias_check. For noncanonicalized operands call canon_rtx with
extracted address operand.
(write_dependence_1): Ditto.
(may_alias_p): Ditto. Remove unused calls to canon_rtx.
Backport from mainline
2014-10-10 Uros Bizjak <ubizjak@gmail.com>
PR rtl-optimization/63483
* alias.c (true_dependence_1): Do not exit early for MEM_READONLY_P
references when alignment ANDs are involved.
(write_dependence_p): Ditto.
(may_alias_p): Ditto.
Backport from mainline
2013-03-26 Richard Biener <rguenther@suse.de>
* alias.c (find_base_term): Avoid redundant and not used recursion.
(base_alias_check): Get the initial base term from the caller.
(true_dependence_1): Compute and pass base terms to base_alias_check.
(write_dependence_p): Likewise.
(may_alias_p): Likewise.
Modified:
branches/gcc-4_8-branch/gcc/ChangeLog
branches/gcc-4_8-branch/gcc/alias.c
branches/gcc-4_8-branch/gcc/dse.c
branches/gcc-4_8-branch/gcc/varasm.c