aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2010-09-28 12:15:15 -0700
committerKhem Raj <raj.khem@gmail.com>2010-09-28 12:15:15 -0700
commitfa11285ca5b6fcdd9f91ac548ae275ea076201bd (patch)
tree89f0d892ade14c96276a786ca62cea2534982631
parent62130292afa62528c479857289baebabd4ca3e03 (diff)
downloadopenembedded-fa11285ca5b6fcdd9f91ac548ae275ea076201bd.zip
openembedded-fa11285ca5b6fcdd9f91ac548ae275ea076201bd.tar.gz
openembedded-fa11285ca5b6fcdd9f91ac548ae275ea076201bd.tar.bz2
gcc-4.5: Fix wrong instruction generation for vmovl patternkhem/import-linaro-gcc-4.5
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--recipes/gcc/gcc-4.5.inc1
-rw-r--r--recipes/gcc/gcc-4.5/gcc-vmovl-PR45805.patch27
2 files changed, 28 insertions, 0 deletions
diff --git a/recipes/gcc/gcc-4.5.inc b/recipes/gcc/gcc-4.5.inc
index c5f996b..55e7e41 100644
--- a/recipes/gcc/gcc-4.5.inc
+++ b/recipes/gcc/gcc-4.5.inc
@@ -117,6 +117,7 @@ SRC_URI = "svn://gcc.gnu.org/svn/gcc/branches;module=${BRANCH} \
file://linaro/gcc-4.5-linaro-r99396.patch \
file://linaro/gcc-4.5-linaro-r99397.patch \
file://linaro/gcc-4.5-linaro-r99398.patch \
+ file://gcc-vmovl-PR45805.patch \
"
# Language Overrides
diff --git a/recipes/gcc/gcc-4.5/gcc-vmovl-PR45805.patch b/recipes/gcc/gcc-4.5/gcc-vmovl-PR45805.patch
new file mode 100644
index 0000000..e228cb7
--- /dev/null
+++ b/recipes/gcc/gcc-4.5/gcc-vmovl-PR45805.patch
@@ -0,0 +1,27 @@
+Source: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45805
+
+Index: gcc-4.5/gcc/config/arm/neon.md
+===================================================================
+--- gcc-4.5.orig/gcc/config/arm/neon.md 2010-09-28 12:04:38.000000000 -0700
++++ gcc-4.5/gcc/config/arm/neon.md 2010-09-28 12:07:28.026227000 -0700
+@@ -5682,9 +5682,9 @@
+ ;; Vectorize for non-neon-quad case
+ (define_insn "neon_unpack<US>_<mode>"
+ [(set (match_operand:<V_widen> 0 "register_operand" "=w")
+- (SE:<V_widen> (match_operand:VDI 1 "register_operand" "")))]
++ (SE:<V_widen> (match_operand:VDI 1 "register_operand" "w")))]
+ "TARGET_NEON"
+- "vmovl.<US><V_sz_elem> %q0, %1"
++ "vmovl.<US><V_sz_elem> %q0, %P1"
+ [(set_attr "neon_type" "neon_shift_1")]
+ )
+
+@@ -5721,7 +5721,7 @@
+ (SE:<V_widen>
+ (match_operand:VDI 2 "register_operand" "w"))))]
+ "TARGET_NEON"
+- "vmull.<US><V_sz_elem> %q0, %1, %2"
++ "vmull.<US><V_sz_elem> %q0, %P1, %P2"
+ [(set_attr "neon_type" "neon_shift_1")]
+ )
+