diff options
| author | OpenEmbedded Project <openembedded-devel@lists.openembedded.org> | 2007-10-18 16:35:01 +0000 |
|---|---|---|
| committer | OpenEmbedded Project <openembedded-devel@lists.openembedded.org> | 2007-10-18 16:35:01 +0000 |
| commit | 2b94d96062ac7eb6a15445f74e424b7b08e69a63 (patch) | |
| tree | a4ceb58e4985908f2dd574d498e1e17f38061f5e /packages/gcc/gcc-4.2.2/arm-crunch-cfcvtds-disable.patch | |
| parent | 51d88fa521229df09a9d624618d7e861d765d21a (diff) | |
| parent | 0ed630ee92d26828b61f1de72dc0b33d2a056123 (diff) | |
merge of '1d0e13e8c6528e7a7037276e3c01cb21dfa085e4'
and '86581f7de9bc72fe5e21778b4442cc0e59e96fbf'
Diffstat (limited to 'packages/gcc/gcc-4.2.2/arm-crunch-cfcvtds-disable.patch')
| -rw-r--r-- | packages/gcc/gcc-4.2.2/arm-crunch-cfcvtds-disable.patch | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/packages/gcc/gcc-4.2.2/arm-crunch-cfcvtds-disable.patch b/packages/gcc/gcc-4.2.2/arm-crunch-cfcvtds-disable.patch new file mode 100644 index 0000000000..ec09ea16a1 --- /dev/null +++ b/packages/gcc/gcc-4.2.2/arm-crunch-cfcvtds-disable.patch @@ -0,0 +1,32 @@ +--- gcc-4.1.2/gcc/config/arm/cirrus.md-cfcvt 2007-06-15 10:06:24.000000000 +1000 ++++ gcc-4.1.2/gcc/config/arm/cirrus.md 2007-06-15 10:07:21.000000000 +1000 +@@ -355,11 +355,12 @@ + (set_attr "cirrus" "normal")] + ) + ++; appears to be buggy - causes 20000320-1.c to fail in execute/ieee + (define_insn "*cirrus_truncdfsf2" + [(set (match_operand:SF 0 "cirrus_fp_register" "=v") + (float_truncate:SF + (match_operand:DF 1 "cirrus_fp_register" "v")))] +- "TARGET_ARM && TARGET_HARD_FLOAT && TARGET_MAVERICK" ++ "TARGET_ARM && TARGET_HARD_FLOAT && TARGET_MAVERICK && 0" + "cfcvtds%?\\t%V0, %V1" + [(set_attr "cirrus" "normal")] + ) +--- gcc-4.1.2/gcc/config/arm/arm.md-truncdfsf2 2007-06-15 10:25:43.000000000 +1000 ++++ gcc-4.1.2/gcc/config/arm/arm.md 2007-06-15 10:27:01.000000000 +1000 +@@ -3181,11 +3181,12 @@ + + ;; Truncation insns + ++;; Maverick Crunch truncdfsf2 is buggy - see cirrus.md + (define_expand "truncdfsf2" + [(set (match_operand:SF 0 "s_register_operand" "") + (float_truncate:SF + (match_operand:DF 1 "s_register_operand" "")))] +- "TARGET_ARM && TARGET_HARD_FLOAT" ++ "TARGET_ARM && TARGET_HARD_FLOAT && (TARGET_FPA || TARGET_VFP)" + "" + ) + |
