1 --- gcc-4.1.2/gcc/config/arm/cirrus.md-cfcvt 2007-06-25 12:46:22.000000000 +1000
2 +++ gcc-4.1.2/gcc/config/arm/cirrus.md 2007-06-25 12:46:41.000000000 +1000
4 "cfcvt64d%?\\t%V0, %V1"
5 [(set_attr "cirrus" "normal")])
8 (define_insn "cirrus_truncsfsi2"
9 [(set (match_operand:SI 0 "s_register_operand" "=r")
10 (fix:SI (fix:SF (match_operand:SF 1 "cirrus_fp_register" "v"))))
11 (clobber (match_scratch:DF 2 "=v"))]
12 - "TARGET_ARM && TARGET_HARD_FLOAT && TARGET_MAVERICK"
13 + "TARGET_ARM && TARGET_HARD_FLOAT && TARGET_MAVERICK && 0"
14 "cftruncs32%?\\t%Y2, %V1\;cfmvr64l%?\\t%0, %Z2"
15 [(set_attr "length" "8")
16 (set_attr "cirrus" "normal")]
19 --- gcc-4.1.2/gcc/config/arm/arm.md-cfcvt 2007-06-25 12:46:56.000000000 +1000
20 +++ gcc-4.1.2/gcc/config/arm/arm.md 2007-06-25 12:48:08.000000000 +1000
21 @@ -3151,10 +3151,11 @@
25 +; appears to be buggy for MAVERICK
26 (define_expand "fix_truncsfsi2"
27 [(set (match_operand:SI 0 "s_register_operand" "")
28 (fix:SI (fix:SF (match_operand:SF 1 "s_register_operand" ""))))]
29 - "TARGET_ARM && TARGET_HARD_FLOAT"
30 + "TARGET_ARM && TARGET_HARD_FLOAT && (TARGET_FPA || TARGET_VFP)"