aboutsummaryrefslogtreecommitdiff
path: root/gcc/genrecog.c
diff options
context:
space:
mode:
authorThomas Preud'homme <thomas.preudhomme@arm.com>2015-04-24 04:49:34 +0000
committerThomas Preud'homme <thopre01@gcc.gnu.org>2015-04-24 04:49:34 +0000
commit8fceae614f031382bc1fa39f94c7d928b5d81f4e (patch)
tree3cadb8317ca0e770ce8c62f746e822584b88cf9e /gcc/genrecog.c
parent62d47a882758add1f94f26941c7461ecebcf4b3e (diff)
downloadgcc-8fceae614f031382bc1fa39f94c7d928b5d81f4e.zip
gcc-8fceae614f031382bc1fa39f94c7d928b5d81f4e.tar.gz
gcc-8fceae614f031382bc1fa39f94c7d928b5d81f4e.tar.bz2
re PR rtl-optimization/34503 (Issues with constant/copy propagation implementation in gcse.c)
2015-04-24 Thomas Preud'homme <thomas.preudhomme@arm.com> Steven Bosscher <steven@gcc.gnu.org> gcc/ PR rtl-optimization/34503 * cprop.c (cprop_reg_p): New. (hash_scan_set): Use above function to check if register can be propagated. (find_avail_set): Return up to two sets, one whose source is a register and one whose source is a constant. Sets are returned in an array passed as parameter rather than as a return value. (cprop_insn): Use a do while loop rather than a goto. Try each of the sets returned by find_avail_set, starting with the one whose source is a constant. Use cprop_reg_p to check if register can be propagated. (do_local_cprop): Use cprop_reg_p to check if register can be propagated. (implicit_set_cond_p): Likewise. gcc/testsuite/ PR rtl-optimization/34503 * gcc.target/arm/pr64616.c: New file. Co-Authored-By: Steven Bosscher <steven@gcc.gnu.org> From-SVN: r222398
Diffstat (limited to 'gcc/genrecog.c')
0 files changed, 0 insertions, 0 deletions