diff options
Diffstat (limited to 'meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0220-gcc.patch')
-rw-r--r-- | meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0220-gcc.patch | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0220-gcc.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0220-gcc.patch new file mode 100644 index 0000000000..0b90623565 --- /dev/null +++ b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0220-gcc.patch | |||
@@ -0,0 +1,55 @@ | |||
1 | From a663e35e688bda4a6841271cbdfbb287654aecd4 Mon Sep 17 00:00:00 2001 | ||
2 | From: jules <jules@138bc75d-0d04-0410-961f-82ee72b054a4> | ||
3 | Date: Thu, 5 May 2011 15:56:06 +0000 | ||
4 | Subject: [PATCH] gcc/ | ||
5 | * config/arm/neon.md (vec_set<mode>_internal): Fix misplaced | ||
6 | parenthesis in D-register case. | ||
7 | |||
8 | gcc/testsuite/ | ||
9 | * gcc.target/arm/neon-vset_lanes8.c: New test. | ||
10 | |||
11 | |||
12 | |||
13 | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_6-branch@173439 138bc75d-0d04-0410-961f-82ee72b054a4 | ||
14 | |||
15 | index bc13722..491dd98 100644 | ||
16 | --- a/gcc/config/arm/neon.md | ||
17 | +++ b/gcc/config/arm/neon.md | ||
18 | @@ -425,7 +425,7 @@ | ||
19 | (match_operand:SI 2 "immediate_operand" "i")))] | ||
20 | "TARGET_NEON" | ||
21 | { | ||
22 | - int elt = ffs ((int) INTVAL (operands[2]) - 1); | ||
23 | + int elt = ffs ((int) INTVAL (operands[2])) - 1; | ||
24 | if (BYTES_BIG_ENDIAN) | ||
25 | elt = GET_MODE_NUNITS (<MODE>mode) - 1 - elt; | ||
26 | operands[2] = GEN_INT (elt); | ||
27 | new file mode 100644 | ||
28 | index 0000000..e87102e | ||
29 | --- /dev/null | ||
30 | +++ b/gcc/testsuite/gcc.target/arm/neon-vset_lanes8.c | ||
31 | @@ -0,0 +1,21 @@ | ||
32 | +/* Test the `vset_lane_s8' ARM Neon intrinsic. */ | ||
33 | + | ||
34 | +/* { dg-do run } */ | ||
35 | +/* { dg-require-effective-target arm_neon_hw } */ | ||
36 | +/* { dg-options "-O0" } */ | ||
37 | +/* { dg-add-options arm_neon } */ | ||
38 | + | ||
39 | +#include "arm_neon.h" | ||
40 | +#include <stdlib.h> | ||
41 | +#include <string.h> | ||
42 | + | ||
43 | +int8x8_t x = { 1, 2, 3, 4, 5, 6, 7, 8 }; | ||
44 | +int8x8_t y = { 1, 2, 3, 16, 5, 6, 7, 8 }; | ||
45 | + | ||
46 | +int main (void) | ||
47 | +{ | ||
48 | + x = vset_lane_s8 (16, x, 3); | ||
49 | + if (memcmp (&x, &y, sizeof (x)) != 0) | ||
50 | + abort(); | ||
51 | + return 0; | ||
52 | +} | ||
53 | -- | ||
54 | 1.7.0.4 | ||
55 | |||