summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/gcc/gcc-4.5.1/pr45094.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/gcc/gcc-4.5.1/pr45094.patch')
-rw-r--r--meta/recipes-devtools/gcc/gcc-4.5.1/pr45094.patch75
1 files changed, 0 insertions, 75 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-4.5.1/pr45094.patch b/meta/recipes-devtools/gcc/gcc-4.5.1/pr45094.patch
deleted file mode 100644
index 182e0055db..0000000000
--- a/meta/recipes-devtools/gcc/gcc-4.5.1/pr45094.patch
+++ /dev/null
@@ -1,75 +0,0 @@
1From 34bd4baaa0f6583f9ff99544c732350c199ec0e2 Mon Sep 17 00:00:00 2001
2From: qiyao <qiyao@138bc75d-0d04-0410-961f-82ee72b054a4>
3Date: Wed, 18 Aug 2010 12:33:43 +0000
4Subject: [PATCH 4/6] gcc/ PR target/45094 * config/arm/arm.c (output_move_double): Fix typo generating instructions ('ldr'->'str').
5
6gcc/testsuite/
7
8 PR target/45094
9 * gcc.target/arm/pr45094.c: New test.
10
11git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@163338 138bc75d-0d04-0410-961f-82ee72b054a4
12---
13 gcc/config/arm/arm.c | 8 ++++----
14 gcc/testsuite/gcc.target/arm/pr45094.c | 27 +++++++++++++++++++++++++++
15 2 files changed, 31 insertions(+), 4 deletions(-)
16 create mode 100644 gcc/testsuite/gcc.target/arm/pr45094.c
17
18diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
19index a06a38b..0382b24 100644
20--- a/gcc/config/arm/arm.c
21+++ b/gcc/config/arm/arm.c
22@@ -12182,13 +12182,13 @@ output_move_double (rtx *operands)
23 {
24 if (GET_CODE (XEXP (operands[0], 0)) == PRE_MODIFY)
25 {
26- output_asm_insn ("ldr%?\t%0, [%1, %2]!", otherops);
27- output_asm_insn ("ldr%?\t%H0, [%1, #4]", otherops);
28+ output_asm_insn ("str%?\t%0, [%1, %2]!", otherops);
29+ output_asm_insn ("str%?\t%H0, [%1, #4]", otherops);
30 }
31 else
32 {
33- output_asm_insn ("ldr%?\t%H0, [%1, #4]", otherops);
34- output_asm_insn ("ldr%?\t%0, [%1], %2", otherops);
35+ output_asm_insn ("str%?\t%H0, [%1, #4]", otherops);
36+ output_asm_insn ("str%?\t%0, [%1], %2", otherops);
37 }
38 }
39 else if (GET_CODE (XEXP (operands[0], 0)) == PRE_MODIFY)
40diff --git a/gcc/testsuite/gcc.target/arm/pr45094.c b/gcc/testsuite/gcc.target/arm/pr45094.c
41new file mode 100644
42index 0000000..05f16d8
43--- /dev/null
44+++ b/gcc/testsuite/gcc.target/arm/pr45094.c
45@@ -0,0 +1,27 @@
46+/* { dg-do run } */
47+/* { dg-require-effective-target arm_neon_hw } */
48+/* { dg-options "-O2 -mcpu=cortex-a8" } */
49+/* { dg-add-options arm_neon } */
50+
51+#include <stdlib.h>
52+
53+long long buffer[32];
54+
55+void __attribute__((noinline)) f(long long *p, int n)
56+{
57+ while (--n >= 0)
58+ {
59+ *p = 1;
60+ p += 32;
61+ }
62+}
63+
64+int main(void)
65+{
66+ f(buffer, 1);
67+
68+ if (!buffer[0])
69+ abort();
70+
71+ return 0;
72+}
73--
741.7.4
75