diff options
author | Bin Cheng <bin.cheng@linux.alibaba.com> | 2021-07-28 17:44:35 +0800 |
---|---|---|
committer | Bin Cheng <bin.cheng@linux.alibaba.com> | 2021-07-28 17:44:35 +0800 |
commit | 0f95c6b2f7dae35ec8c9f211d63edc42baa1d2b7 (patch) | |
tree | 01deeb06d1bbe1e98098d3ea25231be6e5cd8990 | |
parent | 88d0f70a326eeb42b479aa537f8a81bf5a199346 (diff) | |
download | gcc-0f95c6b2f7dae35ec8c9f211d63edc42baa1d2b7.zip gcc-0f95c6b2f7dae35ec8c9f211d63edc42baa1d2b7.tar.gz gcc-0f95c6b2f7dae35ec8c9f211d63edc42baa1d2b7.tar.bz2 |
Don't skip prologue/epilogue when initializing alias.
Register might be modified in prologue/epilogue, which shouldn't
be skipped in alias info analysis.
2021-07-28 Bin Cheng <bin.cheng@linux.alibaba.com>
gcc/
* alias.c (init_alias_analysis): Don't skip prologue/epilogue.
-rw-r--r-- | gcc/alias.c | 12 |
1 files changed, 0 insertions, 12 deletions
diff --git a/gcc/alias.c b/gcc/alias.c index 69e1eb8..099acab 100644 --- a/gcc/alias.c +++ b/gcc/alias.c @@ -3406,14 +3406,6 @@ init_alias_analysis (void) rpo = XNEWVEC (int, n_basic_blocks_for_fn (cfun)); rpo_cnt = pre_and_rev_post_order_compute (NULL, rpo, false); - /* The prologue/epilogue insns are not threaded onto the - insn chain until after reload has completed. Thus, - there is no sense wasting time checking if INSN is in - the prologue/epilogue until after reload has completed. */ - bool could_be_prologue_epilogue = ((targetm.have_prologue () - || targetm.have_epilogue ()) - && reload_completed); - pass = 0; do { @@ -3459,10 +3451,6 @@ init_alias_analysis (void) { rtx note, set; - if (could_be_prologue_epilogue - && prologue_epilogue_contains (insn)) - continue; - /* If this insn has a noalias note, process it, Otherwise, scan for sets. A simple set will have no side effects which could change the base value of any other register. */ |