diff options
author | Marcin Juszkiewicz <hrw@openedhand.com> | 2008-04-17 10:04:19 +0000 |
---|---|---|
committer | Marcin Juszkiewicz <hrw@openedhand.com> | 2008-04-17 10:04:19 +0000 |
commit | 66df6d12445faf14fcab925e883375758f7132a2 (patch) | |
tree | 49092dbe08b3a6b9322b9ccf9e0e51a7a6e2c498 /meta/packages/gcc/gcc-4.2.3/arm-crunch-floatsi-disable.patch | |
parent | abca3ca42f2097d1cef8c2eb87fce46604618af2 (diff) | |
download | poky-66df6d12445faf14fcab925e883375758f7132a2.tar.gz |
gcc: upgrade 4.2.2 -> 4.2.3
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4286 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'meta/packages/gcc/gcc-4.2.3/arm-crunch-floatsi-disable.patch')
-rw-r--r-- | meta/packages/gcc/gcc-4.2.3/arm-crunch-floatsi-disable.patch | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/meta/packages/gcc/gcc-4.2.3/arm-crunch-floatsi-disable.patch b/meta/packages/gcc/gcc-4.2.3/arm-crunch-floatsi-disable.patch new file mode 100644 index 0000000000..aa54ec3e04 --- /dev/null +++ b/meta/packages/gcc/gcc-4.2.3/arm-crunch-floatsi-disable.patch | |||
@@ -0,0 +1,61 @@ | |||
1 | --- gcc-4.1.2/gcc/config/arm/cirrus.md-cfcvt 2007-06-25 12:12:39.000000000 +1000 | ||
2 | +++ gcc-4.1.2/gcc/config/arm/cirrus.md 2007-06-25 12:16:13.000000000 +1000 | ||
3 | @@ -301,21 +301,23 @@ | ||
4 | ) | ||
5 | |||
6 | ;; Convert Cirrus-SI to Cirrus-SF | ||
7 | +; appears to be buggy | ||
8 | (define_insn "cirrus_floatsisf2" | ||
9 | [(set (match_operand:SF 0 "cirrus_fp_register" "=v") | ||
10 | (float:SF (match_operand:SI 1 "s_register_operand" "r"))) | ||
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 | "cfmv64lr%?\\t%Z2, %1\;cfcvt32s%?\\t%V0, %Y2" | ||
15 | [(set_attr "length" "8") | ||
16 | (set_attr "cirrus" "move")] | ||
17 | ) | ||
18 | |||
19 | +;appears to be buggy | ||
20 | (define_insn "cirrus_floatsidf2" | ||
21 | [(set (match_operand:DF 0 "cirrus_fp_register" "=v") | ||
22 | (float:DF (match_operand:SI 1 "s_register_operand" "r"))) | ||
23 | (clobber (match_scratch:DF 2 "=v"))] | ||
24 | - "TARGET_ARM && TARGET_HARD_FLOAT && TARGET_MAVERICK" | ||
25 | + "TARGET_ARM && TARGET_HARD_FLOAT && TARGET_MAVERICK && 0" | ||
26 | "cfmv64lr%?\\t%Z2, %1\;cfcvt32d%?\\t%V0, %Y2" | ||
27 | [(set_attr "length" "8") | ||
28 | (set_attr "cirrus" "move")] | ||
29 | --- gcc-4.1.2/gcc/config/arm/arm.md-cfcvt 2007-06-25 12:16:53.000000000 +1000 | ||
30 | +++ gcc-4.1.2/gcc/config/arm/arm.md 2007-06-25 12:18:20.000000000 +1000 | ||
31 | @@ -3125,24 +3125,26 @@ | ||
32 | |||
33 | ;; Fixed <--> Floating conversion insns | ||
34 | |||
35 | +;; Maverick Crunch floatsisf2 is buggy - see cirrus.md | ||
36 | (define_expand "floatsisf2" | ||
37 | [(set (match_operand:SF 0 "s_register_operand" "") | ||
38 | (float:SF (match_operand:SI 1 "s_register_operand" "")))] | ||
39 | - "TARGET_ARM && TARGET_HARD_FLOAT" | ||
40 | + "TARGET_ARM && TARGET_HARD_FLOAT && (TARGET_FPA || TARGET_VFP)" | ||
41 | " | ||
42 | - if (TARGET_MAVERICK) | ||
43 | + if (TARGET_MAVERICK && 0) | ||
44 | { | ||
45 | emit_insn (gen_cirrus_floatsisf2 (operands[0], operands[1])); | ||
46 | DONE; | ||
47 | } | ||
48 | ") | ||
49 | |||
50 | +;; Maverick Crunch floatsidf2 is buggy - see cirrus.md | ||
51 | (define_expand "floatsidf2" | ||
52 | [(set (match_operand:DF 0 "s_register_operand" "") | ||
53 | (float:DF (match_operand:SI 1 "s_register_operand" "")))] | ||
54 | - "TARGET_ARM && TARGET_HARD_FLOAT" | ||
55 | + "TARGET_ARM && TARGET_HARD_FLOAT && (TARGET_FPA || TARGET_VFP)" | ||
56 | " | ||
57 | - if (TARGET_MAVERICK) | ||
58 | + if (TARGET_MAVERICK && 0) | ||
59 | { | ||
60 | emit_insn (gen_cirrus_floatsidf2 (operands[0], operands[1])); | ||
61 | DONE; | ||