summaryrefslogtreecommitdiff
path: root/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0015-gcc.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0015-gcc.patch')
-rw-r--r--meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0015-gcc.patch47
1 files changed, 47 insertions, 0 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0015-gcc.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0015-gcc.patch
new file mode 100644
index 000000000..4f8cb4d14
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0015-gcc.patch
@@ -0,0 +1,47 @@
+From 2fe380ffa4f1ca0fba1e4915df127992eb977569 Mon Sep 17 00:00:00 2001
+From: rsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Mon, 28 Mar 2011 10:22:57 +0000
+Subject: [PATCH 015/200] gcc/
+ PR target/47553
+ * config/arm/predicates.md (neon_lane_number): Accept 0..15.
+
+gcc/testsuite/
+ PR target/47553
+ * gcc.target/arm/neon-vld-1.c: New test.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_6-branch@171596 138bc75d-0d04-0410-961f-82ee72b054a4
+
+index 399938f..40ce1f3 100644
+--- a/gcc/config/arm/predicates.md
++++ b/gcc/config/arm/predicates.md
+@@ -610,7 +610,7 @@
+ ;; TODO: We could check lane numbers more precisely based on the mode.
+ (define_predicate "neon_lane_number"
+ (and (match_code "const_int")
+- (match_test "INTVAL (op) >= 0 && INTVAL (op) <= 7")))
++ (match_test "INTVAL (op) >= 0 && INTVAL (op) <= 15")))
+ ;; Predicates for named expanders that overlap multiple ISAs.
+
+ (define_predicate "cmpdi_operand"
+new file mode 100644
+index 0000000..f6bf691
+--- /dev/null
++++ b/gcc/testsuite/gcc.target/arm/neon-vld-1.c
+@@ -0,0 +1,13 @@
++/* { dg-do compile } */
++/* { dg-require-effective-target arm_neon_ok } */
++/* { dg-options "-O1" } */
++/* { dg-add-options arm_neon } */
++
++#include <arm_neon.h>
++
++uint8x16_t
++foo (uint8_t *a, uint8x16_t b)
++{
++ vst1q_lane_u8 (a, b, 14);
++ return vld1q_lane_u8 (a + 0x100, b, 15);
++}
+--
+1.7.0.4
+