From 3880477ea548817d64e826faec0aa6d0607a3264 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Tue, 28 Sep 2010 12:15:15 -0700 Subject: gcc-4.5: Fix wrong instruction generation for vmovl pattern Signed-off-by: Khem Raj --- recipes/gcc/gcc-4.5.inc | 1 + recipes/gcc/gcc-4.5/gcc-vmovl-PR45805.patch | 27 +++++++++++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 recipes/gcc/gcc-4.5/gcc-vmovl-PR45805.patch (limited to 'recipes/gcc') diff --git a/recipes/gcc/gcc-4.5.inc b/recipes/gcc/gcc-4.5.inc index 731ade341a..345e8c5514 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 \ " SRC_URI_append_mips64 = " file://mips64-nomultilib.patch" 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 0000000000..e228cb754c --- /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_" + [(set (match_operand: 0 "register_operand" "=w") +- (SE: (match_operand:VDI 1 "register_operand" "")))] ++ (SE: (match_operand:VDI 1 "register_operand" "w")))] + "TARGET_NEON" +- "vmovl. %q0, %1" ++ "vmovl. %q0, %P1" + [(set_attr "neon_type" "neon_shift_1")] + ) + +@@ -5721,7 +5721,7 @@ + (SE: + (match_operand:VDI 2 "register_operand" "w"))))] + "TARGET_NEON" +- "vmull. %q0, %1, %2" ++ "vmull. %q0, %P1, %P2" + [(set_attr "neon_type" "neon_shift_1")] + ) + -- cgit 1.2.3-korg