diff options
author | Jakub Jelinek <jakub@redhat.com> | 2017-04-29 18:17:13 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2017-04-29 18:17:13 +0200 |
commit | bc36c711daea959554c32389a1b28da682257b38 (patch) | |
tree | 02f0ea5899f7dfbcc235af8a4e835d036a77ed94 | |
parent | 4212aecdf8c4bd99b681fcfc2396844303bab39d (diff) | |
download | gcc-bc36c711daea959554c32389a1b28da682257b38.zip gcc-bc36c711daea959554c32389a1b28da682257b38.tar.gz gcc-bc36c711daea959554c32389a1b28da682257b38.tar.bz2 |
re PR rtl-optimization/80491 (Compiler regression for long-add case.)
PR rtl-optimization/80491
* alias.c (memory_modified_in_insn_p): Return true for CALL_INSNs.
From-SVN: r247409
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/alias.c | 4 |
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3e34747..9a9d192 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2017-04-29 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/80491 + * alias.c (memory_modified_in_insn_p): Return true for CALL_INSNs. + 2017-04-29 Marc Glisse <marc.glisse@inria.fr> PR tree-optimization/80487 diff --git a/gcc/alias.c b/gcc/alias.c index e16e350..cff4fac 100644 --- a/gcc/alias.c +++ b/gcc/alias.c @@ -3221,6 +3221,10 @@ memory_modified_in_insn_p (const_rtx mem, const_rtx insn) { if (!INSN_P (insn)) return false; + /* Conservatively assume all non-readonly MEMs might be modified in + calls. */ + if (CALL_P (insn)) + return true; memory_modified = false; note_stores (PATTERN (insn), memory_modified_1, CONST_CAST_RTX(mem)); return memory_modified; |