Patchwork [7/7] binutils: Inform binutils that armv5e really is valid!

login
register
mail settings
Submitter Mark Hatle
Date April 3, 2012, 7:47 p.m.
Message ID <9a2e9d9285851fb5ed61eb8fb8946cd7756fa5f4.1333481624.git.mark.hatle@windriver.com>
Download mbox | patch
Permalink /patch/25115/
State Accepted
Commit 4f2503ebdb5c491b758cbdf6eb7df96d4295c24f
Headers show

Comments

Mark Hatle - April 3, 2012, 7:47 p.m.
A comment in the binutils sources indicate that it should support all of the
-march= parameters that gcc supports.  The tune validations noted that
gas failed on -march=armv5e.

It is not yet clear to me if this patch belongs upstream or not.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
---
 .../binutils/binutils/binutils-armv5e.patch        |   20 ++++++++++++++++++++
 meta/recipes-devtools/binutils/binutils_2.22.bb    |    3 ++-
 2 files changed, 22 insertions(+), 1 deletions(-)
 create mode 100644 meta/recipes-devtools/binutils/binutils/binutils-armv5e.patch
Khem Raj - April 7, 2012, 8:03 a.m.
On Tue, Apr 3, 2012 at 12:47 PM, Mark Hatle <mark.hatle@windriver.com> wrote:
> A comment in the binutils sources indicate that it should support all of the
> -march= parameters that gcc supports.  The tune validations noted that
> gas failed on -march=armv5e.
>
> It is not yet clear to me if this patch belongs upstream or not.

We should fix gcc instead so it emits -march=armv5te if gcc was given
-march=armv5e when calling out assembler. -marmv5e is deprecated in
gas. This wont fly


>
> Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
> ---
>  .../binutils/binutils/binutils-armv5e.patch        |   20 ++++++++++++++++++++
>  meta/recipes-devtools/binutils/binutils_2.22.bb    |    3 ++-
>  2 files changed, 22 insertions(+), 1 deletions(-)
>  create mode 100644 meta/recipes-devtools/binutils/binutils/binutils-armv5e.patch
>
> diff --git a/meta/recipes-devtools/binutils/binutils/binutils-armv5e.patch b/meta/recipes-devtools/binutils/binutils/binutils-armv5e.patch
> new file mode 100644
> index 0000000..4ac1a9c
> --- /dev/null
> +++ b/meta/recipes-devtools/binutils/binutils/binutils-armv5e.patch
> @@ -0,0 +1,20 @@
> +Add the armv5e architecture to binutils
> +
> +Binutils has a comment that indicates it is supposed to match gcc for all of
> +the support "-march=" settings, but it was lacking the armv5e setting.  This
> +was a simple way to add it, as thumb instructions shouldn't be generated by
> +the compiler anyway.
> +
> +Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
> +
> +diff -urN binutils-2.22.orig/gas/config/tc-arm.c binutils-2.22/gas/config/tc-arm.c
> +--- binutils-2.22.orig/gas/config/tc-arm.c     2011-11-21 03:29:31.000000000 -0600
> ++++ binutils-2.22/gas/config/tc-arm.c  2012-04-03 12:07:42.230158760 -0500
> +@@ -22990,6 +22990,7 @@
> +   {"armv4t",          ARM_ARCH_V4T,    FPU_ARCH_FPA},
> +   {"armv4txm",                ARM_ARCH_V4TxM,  FPU_ARCH_FPA},
> +   {"armv5",           ARM_ARCH_V5,     FPU_ARCH_VFP},
> ++  {"armv5e",          ARM_ARCH_V5TE,   FPU_ARCH_VFP},
> +   {"armv5t",          ARM_ARCH_V5T,    FPU_ARCH_VFP},
> +   {"armv5txm",                ARM_ARCH_V5TxM,  FPU_ARCH_VFP},
> +   {"armv5te",         ARM_ARCH_V5TE,   FPU_ARCH_VFP},
> diff --git a/meta/recipes-devtools/binutils/binutils_2.22.bb b/meta/recipes-devtools/binutils/binutils_2.22.bb
> index 8b058fe..d6d19a1 100644
> --- a/meta/recipes-devtools/binutils/binutils_2.22.bb
> +++ b/meta/recipes-devtools/binutils/binutils_2.22.bb
> @@ -1,6 +1,6 @@
>  require binutils.inc
>
> -PR = "r5"
> +PR = "r6"
>
>  LIC_FILES_CHKSUM="\
>     file://src-release;endline=17;md5=4830a9ef968f3b18dd5e9f2c00db2d35\
> @@ -30,6 +30,7 @@ SRC_URI = "\
>      file://libtool-rpath-fix.patch \
>      file://clone-shadow.patch \
>      file://binutils-powerpc-e5500.patch \
> +     file://binutils-armv5e.patch \
>      "
>
>  SRC_URI[md5sum] = "ee0f10756c84979622b992a4a61ea3f5"
> --
> 1.7.1
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Patch

diff --git a/meta/recipes-devtools/binutils/binutils/binutils-armv5e.patch b/meta/recipes-devtools/binutils/binutils/binutils-armv5e.patch
new file mode 100644
index 0000000..4ac1a9c
--- /dev/null
+++ b/meta/recipes-devtools/binutils/binutils/binutils-armv5e.patch
@@ -0,0 +1,20 @@ 
+Add the armv5e architecture to binutils
+
+Binutils has a comment that indicates it is supposed to match gcc for all of
+the support "-march=" settings, but it was lacking the armv5e setting.  This
+was a simple way to add it, as thumb instructions shouldn't be generated by
+the compiler anyway.
+
+Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
+
+diff -urN binutils-2.22.orig/gas/config/tc-arm.c binutils-2.22/gas/config/tc-arm.c
+--- binutils-2.22.orig/gas/config/tc-arm.c	2011-11-21 03:29:31.000000000 -0600
++++ binutils-2.22/gas/config/tc-arm.c	2012-04-03 12:07:42.230158760 -0500
+@@ -22990,6 +22990,7 @@
+   {"armv4t",		ARM_ARCH_V4T,	 FPU_ARCH_FPA},
+   {"armv4txm",		ARM_ARCH_V4TxM,	 FPU_ARCH_FPA},
+   {"armv5",		ARM_ARCH_V5,	 FPU_ARCH_VFP},
++  {"armv5e",		ARM_ARCH_V5TE,	 FPU_ARCH_VFP},
+   {"armv5t",		ARM_ARCH_V5T,	 FPU_ARCH_VFP},
+   {"armv5txm",		ARM_ARCH_V5TxM,	 FPU_ARCH_VFP},
+   {"armv5te",		ARM_ARCH_V5TE,	 FPU_ARCH_VFP},
diff --git a/meta/recipes-devtools/binutils/binutils_2.22.bb b/meta/recipes-devtools/binutils/binutils_2.22.bb
index 8b058fe..d6d19a1 100644
--- a/meta/recipes-devtools/binutils/binutils_2.22.bb
+++ b/meta/recipes-devtools/binutils/binutils_2.22.bb
@@ -1,6 +1,6 @@ 
 require binutils.inc
 
-PR = "r5"
+PR = "r6"
 
 LIC_FILES_CHKSUM="\
     file://src-release;endline=17;md5=4830a9ef968f3b18dd5e9f2c00db2d35\
@@ -30,6 +30,7 @@  SRC_URI = "\
      file://libtool-rpath-fix.patch \
      file://clone-shadow.patch \
      file://binutils-powerpc-e5500.patch \
+     file://binutils-armv5e.patch \
      "
 
 SRC_URI[md5sum] = "ee0f10756c84979622b992a4a61ea3f5"