aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2018-09-17 22:33:04 +0200
committerUros Bizjak <uros@gcc.gnu.org>2018-09-17 22:33:04 +0200
commit71b731be7a9fa2b92ee63abeb48900008902f7a6 (patch)
tree06ad9b838907ca2fdc06ba628fc3fb116957b021
parentc896ecfeab0658dc61ed0a9ad4b649c69d1d8679 (diff)
downloadgcc-71b731be7a9fa2b92ee63abeb48900008902f7a6.zip
gcc-71b731be7a9fa2b92ee63abeb48900008902f7a6.tar.gz
gcc-71b731be7a9fa2b92ee63abeb48900008902f7a6.tar.bz2
i386.c (ix86_emit_i387_log1p): Emit fldln2 earlier.
* config/i386/i386.c (ix86_emit_i387_log1p): Emit fldln2 earlier. From-SVN: r264373
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/i386/i386.c6
2 files changed, 7 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 26d7be6..626c69d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2018-09-17 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.c (ix86_emit_i387_log1p): Emit fldln2 earlier.
+
2018-09-17 David Malcolm <dmalcolm@redhat.com>
* gimple-ssa-sprintf.c (fmtwarn): Update for introduction of
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 96759de..0c86303 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -43941,20 +43941,20 @@ void ix86_emit_i387_log1p (rtx op0, rtx op1)
rtx test;
emit_insn (gen_absxf2 (tmp, op1));
+ emit_move_insn (tmp2, standard_80387_constant_rtx (4)); /* fldln2 */
test = gen_rtx_GE (VOIDmode, tmp,
const_double_from_real_value (
REAL_VALUE_ATOF ("0.29289321881345247561810596348408353", XFmode),
XFmode));
- emit_jump_insn (gen_cbranchxf4 (test, XEXP (test, 0), XEXP (test, 1), label1));
+ emit_jump_insn
+ (gen_cbranchxf4 (test, XEXP (test, 0), XEXP (test, 1), label1));
- emit_move_insn (tmp2, standard_80387_constant_rtx (4)); /* fldln2 */
emit_insn (gen_fyl2xp1xf3_i387 (op0, op1, tmp2));
emit_jump (label2);
emit_label (label1);
emit_move_insn (tmp, CONST1_RTX (XFmode));
emit_insn (gen_addxf3 (tmp, op1, tmp));
- emit_move_insn (tmp2, standard_80387_constant_rtx (4)); /* fldln2 */
emit_insn (gen_fyl2xxf3_i387 (op0, tmp, tmp2));
emit_label (label2);