+2008-05-31 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (*cmpfp_<mode>): Enable for optimize_size.
+ (*cmpfp_<mode>_cc): Ditto.
+ (*fp_jcc_8<mode>_387): Ditto.
+ (*fop_<MODEF:mode>_2_i387): Ditto.
+ (*fop_<MODEF:mode>_3_i387): Ditto.
+ (*fop_xf_2_i387): Ditto.
+ (*fop_xf_3_i387): Ditto.
+
2008-06-02 Tomas Bily <tbily@suse.cz>
- * tree-ssa-ifcombine.c (get_name_for_bit_test): Use CONVERT_EXPR_P.
+ * tree-ssa-ifcombine.c (get_name_for_bit_test): Use CONVERT_EXPR_P.
2008-06-01 Richard Sandiford <rdsandiford@googlemail.com>
Revert
2007-11-29 Zdenek Dvorak <ook@ucw.cz>
- PR tree-optimization/34244
- * tree-vrp.c (adjust_range_with_scev): Clear scev cache.
- (record_numbers_of_iterations): New function.
- (execute_vrp): Cache the numbers of iterations of loops.
- * tree-scalar-evolution.c (scev_reset_except_niters):
- New function.
- (scev_reset): Use scev_reset_except_niters.
- * tree-scalar-evolution.h (scev_reset_except_niters): Declare.
+ PR tree-optimization/34244
+ * tree-vrp.c (adjust_range_with_scev): Clear scev cache.
+ (record_numbers_of_iterations): New function.
+ (execute_vrp): Cache the numbers of iterations of loops.
+ * tree-scalar-evolution.c (scev_reset_except_niters):
+ New function.
+ (scev_reset): Use scev_reset_except_niters.
+ * tree-scalar-evolution.h (scev_reset_except_niters): Declare.
2008-05-31 Bernd Schmidt <bernd.schmidt@analog.com>
[(match_operand:X87MODEI12 2 "memory_operand" "m")]))]
UNSPEC_FNSTSW))]
"X87_FLOAT_MODE_P (GET_MODE (operands[1]))
- && TARGET_USE_<MODE>MODE_FIOP
+ && (TARGET_USE_<MODE>MODE_FIOP || optimize_size)
&& (GET_MODE (operands [3]) == GET_MODE (operands[1]))"
"* return output_fp_compare (insn, operands, 0, 0);"
[(set_attr "type" "multi")
(clobber (match_operand:HI 0 "register_operand" "=a"))]
"X87_FLOAT_MODE_P (GET_MODE (operands[1]))
&& TARGET_SAHF && !TARGET_CMOVE
- && TARGET_USE_<MODE>MODE_FIOP
+ && (TARGET_USE_<MODE>MODE_FIOP || optimize_size)
&& (GET_MODE (operands [3]) == GET_MODE (operands[1]))"
"#"
"&& reload_completed"
(clobber (reg:CCFP FLAGS_REG))
(clobber (match_scratch:HI 5 "=a,a"))]
"X87_FLOAT_MODE_P (GET_MODE (operands[3]))
- && TARGET_USE_<MODE>MODE_FIOP
+ && (TARGET_USE_<MODE>MODE_FIOP || optimize_size)
&& GET_MODE (operands[1]) == GET_MODE (operands[3])
&& !ix86_use_fcomi_compare (swap_condition (GET_CODE (operands[0])))
&& ix86_fp_compare_mode (swap_condition (GET_CODE (operands[0]))) == CCFPmode
(match_operand:X87MODEI12 1 "nonimmediate_operand" "m,?r"))
(match_operand:MODEF 2 "register_operand" "0,0")]))]
"TARGET_80387 && !TARGET_SSE_MATH
- && TARGET_USE_<X87MODEI12:MODE>MODE_FIOP"
+ && (TARGET_USE_<X87MODEI12:MODE>MODE_FIOP || optimize_size)"
"* return which_alternative ? \"#\" : output_387_binary_op (insn, operands);"
[(set (attr "type")
(cond [(match_operand:MODEF 3 "mult_operator" "")
(float:MODEF
(match_operand:X87MODEI12 2 "nonimmediate_operand" "m,?r"))]))]
"TARGET_80387 && !TARGET_SSE_MATH
- && TARGET_USE_<X87MODEI12:MODE>MODE_FIOP"
+ && (TARGET_USE_<X87MODEI12:MODE>MODE_FIOP || optimize_size)"
"* return which_alternative ? \"#\" : output_387_binary_op (insn, operands);"
[(set (attr "type")
(cond [(match_operand:MODEF 3 "mult_operator" "")
(define_insn "*fop_df_4_i387"
[(set (match_operand:DF 0 "register_operand" "=f,f")
(match_operator:DF 3 "binary_fp_operator"
- [(float_extend:DF (match_operand:SF 1 "nonimmediate_operand" "fm,0"))
+ [(float_extend:DF
+ (match_operand:SF 1 "nonimmediate_operand" "fm,0"))
(match_operand:DF 2 "register_operand" "0,f")]))]
"TARGET_80387 && !(TARGET_SSE2 && TARGET_SSE_MATH)
&& !(MEM_P (operands[1]) && MEM_P (operands[2]))"
[(float:XF
(match_operand:X87MODEI12 1 "nonimmediate_operand" "m,?r"))
(match_operand:XF 2 "register_operand" "0,0")]))]
- "TARGET_80387 && TARGET_USE_<MODE>MODE_FIOP"
+ "TARGET_80387 && (TARGET_USE_<MODE>MODE_FIOP || optimize_size)"
"* return which_alternative ? \"#\" : output_387_binary_op (insn, operands);"
[(set (attr "type")
(cond [(match_operand:XF 3 "mult_operator" "")
[(match_operand:XF 1 "register_operand" "0,0")
(float:XF
(match_operand:X87MODEI12 2 "nonimmediate_operand" "m,?r"))]))]
- "TARGET_80387 && TARGET_USE_<MODE>MODE_FIOP"
+ "TARGET_80387 && (TARGET_USE_<MODE>MODE_FIOP || optimize_size)"
"* return which_alternative ? \"#\" : output_387_binary_op (insn, operands);"
[(set (attr "type")
(cond [(match_operand:XF 3 "mult_operator" "")