* config/epiphany/epiphany.opt (-may-round-for-trunc): New option.
* config/epiphany/epiphany.md (*fix_truncsfsi2_i): Take it into account.
From-SVN: r193891
for misaligned memory operands.
* config/epiphany/predicates.md (misaligned_operand): New predicate.
+ * config/epiphany/epiphany.opt (-may-round-for-trunc): New option.
+ * config/epiphany/epiphany.md (*fix_truncsfsi2_i): Take it into account.
+
2012-11-28 Richard Biener <rguenther@suse.de>
PR tree-optimization/54547
""
"fix %0, %1"
[(set_attr "type" "fp")
- (set_attr "fp_mode" "round_trunc")])
+ (set (attr "fp_mode")
+ (cond [(match_test "TARGET_MAY_ROUND_FOR_TRUNC")
+ (const_string "round_unknown")]
+ (const_string "round_trunc")))])
(define_expand "fixuns_truncsfsi2"
[(set (match_operand:SI 0 "gpr_operand" "")
EnumValue
Enum(attr_fp_mode) String(int) Value(FP_MODE_INT)
+may-round-for-trunc
+Target Mask(MAY_ROUND_FOR_TRUNC)
+A floatig point to integer truncation may be replaced with rounding to save mode switching
+
mvect-double
Target Mask(VECT_DOUBLE)
Vectorize for double-word operations.