diff options
author | Uros Bizjak <uros@gcc.gnu.org> | 2016-09-20 20:00:46 +0200 |
---|---|---|
committer | Uros Bizjak <uros@gcc.gnu.org> | 2016-09-20 20:00:46 +0200 |
commit | ed34fc9723afa86bcb50d2372d8941687d39213c (patch) | |
tree | fc078b5ec88ed4cf2a6661716c07b967c75eaad5 /gcc | |
parent | 3c1917945db0b725842fd39e76c39e7de049afa4 (diff) | |
download | gcc-ed34fc9723afa86bcb50d2372d8941687d39213c.zip gcc-ed34fc9723afa86bcb50d2372d8941687d39213c.tar.gz gcc-ed34fc9723afa86bcb50d2372d8941687d39213c.tar.bz2 |
i386.md (mult->ashift peephole2s): Use pow2p_hwi instead of exact_log2.
* config/i386/i386.md (mult->ashift peephole2s): Use pow2p_hwi
instead of exact_log2.
From-SVN: r240281
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 10 | ||||
-rw-r--r-- | gcc/config/i386/i386.md | 4 |
2 files changed, 10 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e92ad38..c7f1080 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2016-09-20 Uros Bizjak <ubizjak@gmail.com> + * config/i386/i386.md (mult->ashift peephole2s): Use pow2p_hwi + instead of exact_log2. + +2016-09-20 Uros Bizjak <ubizjak@gmail.com> + PR target/77621 * config/i386/i386.c (ix86_preferred_simd_mode) <case DFmode>: Don't return word_mode for !TARGET_VECTORIZE_DOUBLE. @@ -346,7 +351,8 @@ 2016-09-14 Pat Haugen <pthaugen@us.ibm.com> - * loop-unroll.c (unroll_loop_runtime_iterations): Set probability of succ edge. + * loop-unroll.c (unroll_loop_runtime_iterations): Set probability + of succ edge. 2016-09-14 Segher Boessenkool <segher@kernel.crashing.org> @@ -446,7 +452,7 @@ 2016-09-13 Tamar Christina <tamar.christina@arm.com> - * config/aarch64/aarch64-builtins.c + * config/aarch64/aarch64-builtins.c (aarch64_init_simd_builtins): Fix builtin type signature printing. 2016-09-13 Uros Bizjak <ubizjak@gmail.com> diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index e3c9ead..6337a5d 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -18304,7 +18304,7 @@ [(set (match_operand:SWI48 0 "register_operand") (mult:SWI48 (match_dup 0) (match_operand:SWI48 1 "const_int_operand")))] - "exact_log2 (INTVAL (operands[1])) >= 0 + "pow2p_hwi (INTVAL (operands[1])) && peep2_regno_dead_p (0, FLAGS_REG)" [(parallel [(set (match_dup 0) (ashift:SWI48 (match_dup 0) (match_dup 1))) (clobber (reg:CC FLAGS_REG))])] @@ -18316,7 +18316,7 @@ (mult:SI (match_operand:SI 1 "register_operand") (match_operand:SI 2 "const_int_operand"))))] "TARGET_64BIT - && exact_log2 (INTVAL (operands[2])) >= 0 + && pow2p_hwi (INTVAL (operands[2])) && REGNO (operands[0]) == REGNO (operands[1]) && peep2_regno_dead_p (0, FLAGS_REG)" [(parallel [(set (match_dup 0) |