+2007-02-20 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (expm1xf2): Reorder insn sequence for
+ better code generation.
+
2007-02-20 Ben Elliston <bje@au.ibm.com>
* config/m68hc11/m68hc11.h (OVERRIDE_OPTIONS): Remove extra ;.
2007-02-19 Richard Henderson <rth@redhat.com>
- PR debug/29558
- * var-tracking.c (track_expr_p): Disallow AGGREGATE_TYPE_P
- in memory.
+ PR debug/29558
+ * var-tracking.c (track_expr_p): Disallow AGGREGATE_TYPE_P
+ in memory.
2007-02-19 Andreas Krebbel <krebbel1@de.ibm.com>
* except.c (expand_builtin_eh_return_data_regno): Pass entire
CALL_EXPR as parameter instead of arglist. Use new CALL_EXPR
- accessors.
+ accessors.
* coverage.c (create_coverage): Use build_call_expr.
2007-02-03 Douglas Gregor <doug.gregor@gmail.com>
- * c-opts.c (c_common_post_options): If C++0x mode is enabled, don't
- warn about C++0x compatibility.
+ * c-opts.c (c_common_post_options): If C++0x mode is enabled, don't
+ warn about C++0x compatibility.
2007-02-04 Kazu Hirata <kazu@codesourcery.com>
(match_dup 2)))
(set (match_dup 4) (unspec:XF [(match_dup 3)] UNSPEC_FRNDINT))
(set (match_dup 5) (minus:XF (match_dup 3) (match_dup 4)))
+ (set (match_dup 9) (float_extend:XF (match_dup 13)))
(set (match_dup 6) (unspec:XF [(match_dup 5)] UNSPEC_F2XM1))
(parallel [(set (match_dup 7)
(unspec:XF [(match_dup 6) (match_dup 4)]
UNSPEC_FSCALE_FRACT))
- (set (match_dup 8)
+ (set (match_dup 8)
(unspec:XF [(match_dup 6) (match_dup 4)]
UNSPEC_FSCALE_EXP))])
(parallel [(set (match_dup 10)
(set (match_dup 11)
(unspec:XF [(match_dup 9) (match_dup 8)]
UNSPEC_FSCALE_EXP))])
- (set (match_dup 12) (minus:XF (match_dup 10) (match_dup 9)))
+ (set (match_dup 12) (minus:XF (match_dup 10)
+ (float_extend:XF (match_dup 13))))
(set (match_operand:XF 0 "register_operand" "")
(plus:XF (match_dup 12) (match_dup 7)))]
"TARGET_USE_FANCY_MATH_387
for (i = 2; i < 13; i++)
operands[i] = gen_reg_rtx (XFmode);
-
+
+ operands[13]
+ = validize_mem (force_const_mem (SFmode, CONST1_RTX (SFmode))); /* fld1 */
+
emit_move_insn (operands[2], standard_80387_constant_rtx (5)); /* fldl2e */
- emit_move_insn (operands[9], CONST1_RTX (XFmode)); /* fld1 */
})
(define_expand "expm1<mode>2"