diff options
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.patch | 47 |
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 + |