All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Remove the simd tune for armv8a
@ 2019-03-19 11:45 Adrian Bunk
  2019-03-20 23:56 ` Khem Raj
  0 siblings, 1 reply; 3+ messages in thread
From: Adrian Bunk @ 2019-03-19 11:45 UTC (permalink / raw)
  To: openembedded-core

SIMD instructions are a mandatory part of armv8a
(they were optional in armv7a), and the gcc docs
also say that they are always enabled.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
---
 meta/conf/machine/include/arm/arch-armv8a.inc | 6 ++----
 meta/conf/machine/include/tune-cortexa32.inc  | 4 ++--
 meta/conf/machine/include/tune-cortexa35.inc  | 4 ++--
 meta/conf/machine/include/tune-cortexa53.inc  | 4 ++--
 meta/conf/machine/include/tune-cortexa72.inc  | 2 +-
 5 files changed, 9 insertions(+), 11 deletions(-)

diff --git a/meta/conf/machine/include/arm/arch-armv8a.inc b/meta/conf/machine/include/arm/arch-armv8a.inc
index 22064559be..44d0ca4557 100644
--- a/meta/conf/machine/include/arm/arch-armv8a.inc
+++ b/meta/conf/machine/include/arm/arch-armv8a.inc
@@ -2,8 +2,6 @@ DEFAULTTUNE ?= "armv8a-crc"
 
 TUNEVALID[armv8a] = "Enable instructions for ARMv8-a"
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv8a', ' -march=armv8-a', '', d)}"
-TUNEVALID[simd] = "Enable instructions for ARMv8-a Advanced SIMD and floating-point"
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'simd', '+simd', '', d)}"
 TUNEVALID[crc] = "Enable instructions for ARMv8-a Cyclic Redundancy Check (CRC)"
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'crc', '+crc', '', d)}"
 TUNEVALID[crypto] = "Enable instructions for ARMv8-a cryptographic"
@@ -18,11 +16,11 @@ ARMPKGARCH_tune-armv8a                    ?= "armv8a"
 ARMPKGARCH_tune-armv8a-crc                ?= "armv8a"
 ARMPKGARCH_tune-armv8a-crypto             ?= "armv8a"
 ARMPKGARCH_tune-armv8a-crc-crypto         ?= "armv8a"
-TUNE_FEATURES_tune-armv8a                  = "aarch64 armv8a simd"
+TUNE_FEATURES_tune-armv8a                  = "aarch64 armv8a"
 TUNE_FEATURES_tune-armv8a-crc              = "${TUNE_FEATURES_tune-armv8a} crc"
 TUNE_FEATURES_tune-armv8a-crypto           = "${TUNE_FEATURES_tune-armv8a} crypto"
 TUNE_FEATURES_tune-armv8a-crc-crypto       = "${TUNE_FEATURES_tune-armv8a-crc} crypto"
-PACKAGE_EXTRA_ARCHS_tune-armv8a            = "aarch64 armv8a simd"
+PACKAGE_EXTRA_ARCHS_tune-armv8a            = "aarch64 armv8a"
 PACKAGE_EXTRA_ARCHS_tune-armv8a-crc        = "${PACKAGE_EXTRA_ARCHS_tune-armv8a} crc"
 PACKAGE_EXTRA_ARCHS_tune-armv8a-crypto     = "${PACKAGE_EXTRA_ARCHS_tune-armv8a} crypto"
 PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} crypto"
diff --git a/meta/conf/machine/include/tune-cortexa32.inc b/meta/conf/machine/include/tune-cortexa32.inc
index 4bf7f774e1..9c948f1766 100644
--- a/meta/conf/machine/include/tune-cortexa32.inc
+++ b/meta/conf/machine/include/tune-cortexa32.inc
@@ -10,8 +10,8 @@ require conf/machine/include/arm/arch-armv8a.inc
 AVAILTUNES += "cortexa32 cortexa32-crypto"
 ARMPKGARCH_tune-cortexa32             = "cortexa32"
 ARMPKGARCH_tune-cortexa32-crypto      = "cortexa32"
-TUNE_FEATURES_tune-cortexa32          = "aarch64 cortexa32 simd crc"
-TUNE_FEATURES_tune-cortexa32-crypto   = "aarch64 cortexa32 simd crc crypto"
+TUNE_FEATURES_tune-cortexa32          = "aarch64 cortexa32 crc"
+TUNE_FEATURES_tune-cortexa32-crypto   = "aarch64 cortexa32 crc crypto"
 PACKAGE_EXTRA_ARCHS_tune-cortexa32             = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa32"
 PACKAGE_EXTRA_ARCHS_tune-cortexa32-crypto      = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa32 cortexa32-crypto"
 BASE_LIB_tune-cortexa32               = "lib64"
diff --git a/meta/conf/machine/include/tune-cortexa35.inc b/meta/conf/machine/include/tune-cortexa35.inc
index 6ece810753..d6df6cd6bd 100644
--- a/meta/conf/machine/include/tune-cortexa35.inc
+++ b/meta/conf/machine/include/tune-cortexa35.inc
@@ -9,8 +9,8 @@ require conf/machine/include/arm/arch-armv8a.inc
 AVAILTUNES += "cortexa35 cortexa35-crypto"
 ARMPKGARCH_tune-cortexa35             = "cortexa35"
 ARMPKGARCH_tune-cortexa35-crypto      = "cortexa35"
-TUNE_FEATURES_tune-cortexa35          = "aarch64 cortexa35 simd crc"
-TUNE_FEATURES_tune-cortexa35-crypto   = "aarch64 cortexa35 simd crc crypto"
+TUNE_FEATURES_tune-cortexa35          = "aarch64 cortexa35 crc"
+TUNE_FEATURES_tune-cortexa35-crypto   = "aarch64 cortexa35 crc crypto"
 PACKAGE_EXTRA_ARCHS_tune-cortexa35             = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa35"
 PACKAGE_EXTRA_ARCHS_tune-cortexa35-crypto      = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa35 cortexa35-crypto"
 BASE_LIB_tune-cortexa35               = "lib64"
diff --git a/meta/conf/machine/include/tune-cortexa53.inc b/meta/conf/machine/include/tune-cortexa53.inc
index 9fb37ff639..6c0b443eaf 100644
--- a/meta/conf/machine/include/tune-cortexa53.inc
+++ b/meta/conf/machine/include/tune-cortexa53.inc
@@ -9,8 +9,8 @@ require conf/machine/include/arm/arch-armv8a.inc
 AVAILTUNES += "cortexa53 cortexa53-crypto"
 ARMPKGARCH_tune-cortexa53             = "cortexa53"
 ARMPKGARCH_tune-cortexa53-crypto      = "cortexa53"
-TUNE_FEATURES_tune-cortexa53          = "aarch64 cortexa53 simd crc"
-TUNE_FEATURES_tune-cortexa53-crypto   = "aarch64 cortexa53 simd crc crypto"
+TUNE_FEATURES_tune-cortexa53          = "aarch64 cortexa53 crc"
+TUNE_FEATURES_tune-cortexa53-crypto   = "aarch64 cortexa53 crc crypto"
 PACKAGE_EXTRA_ARCHS_tune-cortexa53             = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa53"
 PACKAGE_EXTRA_ARCHS_tune-cortexa53-crypto      = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa53 cortexa53-crypto"
 BASE_LIB_tune-cortexa53               = "lib64"
diff --git a/meta/conf/machine/include/tune-cortexa72.inc b/meta/conf/machine/include/tune-cortexa72.inc
index 4c2306c4fd..00f7745a22 100644
--- a/meta/conf/machine/include/tune-cortexa72.inc
+++ b/meta/conf/machine/include/tune-cortexa72.inc
@@ -8,6 +8,6 @@ require conf/machine/include/arm/arch-armv8a.inc
 # Little Endian base configs
 AVAILTUNES += "cortexa72"
 ARMPKGARCH_tune-cortexa72             = "cortexa72"
-TUNE_FEATURES_tune-cortexa72          = "aarch64 cortexa72 simd crc crypto"
+TUNE_FEATURES_tune-cortexa72          = "aarch64 cortexa72 crc crypto"
 PACKAGE_EXTRA_ARCHS_tune-cortexa72    = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa72"
 BASE_LIB_tune-cortexa72               = "lib64"
-- 
2.17.1



^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] Remove the simd tune for armv8a
  2019-03-19 11:45 [PATCH] Remove the simd tune for armv8a Adrian Bunk
@ 2019-03-20 23:56 ` Khem Raj
  2019-03-21  7:01   ` Adrian Bunk
  0 siblings, 1 reply; 3+ messages in thread
From: Khem Raj @ 2019-03-20 23:56 UTC (permalink / raw)
  To: Adrian Bunk; +Cc: openembedded-core

[-- Attachment #1: Type: text/plain, Size: 7068 bytes --]

On Tue, Mar 19, 2019 at 4:45 AM Adrian Bunk <bunk@stusta.de> wrote:

> SIMD instructions are a mandatory part of armv8a
> (they were optional in armv7a), and the gcc docs
> also say that they are always enabled.


This should be ok but please cite the reference to arch specs where it’s
mentioned and if someone
Has need to turn it off then they should chime back
Since removing this just removes a detail which we can actually keep
without much effort

>
>
> Signed-off-by: Adrian Bunk <bunk@stusta.de>
> ---
>  meta/conf/machine/include/arm/arch-armv8a.inc | 6 ++----
>  meta/conf/machine/include/tune-cortexa32.inc  | 4 ++--
>  meta/conf/machine/include/tune-cortexa35.inc  | 4 ++--
>  meta/conf/machine/include/tune-cortexa53.inc  | 4 ++--
>  meta/conf/machine/include/tune-cortexa72.inc  | 2 +-
>  5 files changed, 9 insertions(+), 11 deletions(-)
>
> diff --git a/meta/conf/machine/include/arm/arch-armv8a.inc
> b/meta/conf/machine/include/arm/arch-armv8a.inc
> index 22064559be..44d0ca4557 100644
> --- a/meta/conf/machine/include/arm/arch-armv8a.inc
> +++ b/meta/conf/machine/include/arm/arch-armv8a.inc
> @@ -2,8 +2,6 @@ DEFAULTTUNE ?= "armv8a-crc"
>
>  TUNEVALID[armv8a] = "Enable instructions for ARMv8-a"
>  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv8a', '
> -march=armv8-a', '', d)}"
> -TUNEVALID[simd] = "Enable instructions for ARMv8-a Advanced SIMD and
> floating-point"
> -TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'simd', '+simd',
> '', d)}"
>  TUNEVALID[crc] = "Enable instructions for ARMv8-a Cyclic Redundancy Check
> (CRC)"
>  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'crc', '+crc', '',
> d)}"
>  TUNEVALID[crypto] = "Enable instructions for ARMv8-a cryptographic"
> @@ -18,11 +16,11 @@ ARMPKGARCH_tune-armv8a                    ?= "armv8a"
>  ARMPKGARCH_tune-armv8a-crc                ?= "armv8a"
>  ARMPKGARCH_tune-armv8a-crypto             ?= "armv8a"
>  ARMPKGARCH_tune-armv8a-crc-crypto         ?= "armv8a"
> -TUNE_FEATURES_tune-armv8a                  = "aarch64 armv8a simd"
> +TUNE_FEATURES_tune-armv8a                  = "aarch64 armv8a"
>  TUNE_FEATURES_tune-armv8a-crc              =
> "${TUNE_FEATURES_tune-armv8a} crc"
>  TUNE_FEATURES_tune-armv8a-crypto           =
> "${TUNE_FEATURES_tune-armv8a} crypto"
>  TUNE_FEATURES_tune-armv8a-crc-crypto       =
> "${TUNE_FEATURES_tune-armv8a-crc} crypto"
> -PACKAGE_EXTRA_ARCHS_tune-armv8a            = "aarch64 armv8a simd"
> +PACKAGE_EXTRA_ARCHS_tune-armv8a            = "aarch64 armv8a"
>  PACKAGE_EXTRA_ARCHS_tune-armv8a-crc        =
> "${PACKAGE_EXTRA_ARCHS_tune-armv8a} crc"
>  PACKAGE_EXTRA_ARCHS_tune-armv8a-crypto     =
> "${PACKAGE_EXTRA_ARCHS_tune-armv8a} crypto"
>  PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto =
> "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} crypto"
> diff --git a/meta/conf/machine/include/tune-cortexa32.inc
> b/meta/conf/machine/include/tune-cortexa32.inc
> index 4bf7f774e1..9c948f1766 100644
> --- a/meta/conf/machine/include/tune-cortexa32.inc
> +++ b/meta/conf/machine/include/tune-cortexa32.inc
> @@ -10,8 +10,8 @@ require conf/machine/include/arm/arch-armv8a.inc
>  AVAILTUNES += "cortexa32 cortexa32-crypto"
>  ARMPKGARCH_tune-cortexa32             = "cortexa32"
>  ARMPKGARCH_tune-cortexa32-crypto      = "cortexa32"
> -TUNE_FEATURES_tune-cortexa32          = "aarch64 cortexa32 simd crc"
> -TUNE_FEATURES_tune-cortexa32-crypto   = "aarch64 cortexa32 simd crc
> crypto"
> +TUNE_FEATURES_tune-cortexa32          = "aarch64 cortexa32 crc"
> +TUNE_FEATURES_tune-cortexa32-crypto   = "aarch64 cortexa32 crc crypto"
>  PACKAGE_EXTRA_ARCHS_tune-cortexa32             =
> "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa32"
>  PACKAGE_EXTRA_ARCHS_tune-cortexa32-crypto      =
> "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa32 cortexa32-crypto"
>  BASE_LIB_tune-cortexa32               = "lib64"
> diff --git a/meta/conf/machine/include/tune-cortexa35.inc
> b/meta/conf/machine/include/tune-cortexa35.inc
> index 6ece810753..d6df6cd6bd 100644
> --- a/meta/conf/machine/include/tune-cortexa35.inc
> +++ b/meta/conf/machine/include/tune-cortexa35.inc
> @@ -9,8 +9,8 @@ require conf/machine/include/arm/arch-armv8a.inc
>  AVAILTUNES += "cortexa35 cortexa35-crypto"
>  ARMPKGARCH_tune-cortexa35             = "cortexa35"
>  ARMPKGARCH_tune-cortexa35-crypto      = "cortexa35"
> -TUNE_FEATURES_tune-cortexa35          = "aarch64 cortexa35 simd crc"
> -TUNE_FEATURES_tune-cortexa35-crypto   = "aarch64 cortexa35 simd crc
> crypto"
> +TUNE_FEATURES_tune-cortexa35          = "aarch64 cortexa35 crc"
> +TUNE_FEATURES_tune-cortexa35-crypto   = "aarch64 cortexa35 crc crypto"
>  PACKAGE_EXTRA_ARCHS_tune-cortexa35             =
> "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa35"
>  PACKAGE_EXTRA_ARCHS_tune-cortexa35-crypto      =
> "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa35 cortexa35-crypto"
>  BASE_LIB_tune-cortexa35               = "lib64"
> diff --git a/meta/conf/machine/include/tune-cortexa53.inc
> b/meta/conf/machine/include/tune-cortexa53.inc
> index 9fb37ff639..6c0b443eaf 100644
> --- a/meta/conf/machine/include/tune-cortexa53.inc
> +++ b/meta/conf/machine/include/tune-cortexa53.inc
> @@ -9,8 +9,8 @@ require conf/machine/include/arm/arch-armv8a.inc
>  AVAILTUNES += "cortexa53 cortexa53-crypto"
>  ARMPKGARCH_tune-cortexa53             = "cortexa53"
>  ARMPKGARCH_tune-cortexa53-crypto      = "cortexa53"
> -TUNE_FEATURES_tune-cortexa53          = "aarch64 cortexa53 simd crc"
> -TUNE_FEATURES_tune-cortexa53-crypto   = "aarch64 cortexa53 simd crc
> crypto"
> +TUNE_FEATURES_tune-cortexa53          = "aarch64 cortexa53 crc"
> +TUNE_FEATURES_tune-cortexa53-crypto   = "aarch64 cortexa53 crc crypto"
>  PACKAGE_EXTRA_ARCHS_tune-cortexa53             =
> "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa53"
>  PACKAGE_EXTRA_ARCHS_tune-cortexa53-crypto      =
> "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa53 cortexa53-crypto"
>  BASE_LIB_tune-cortexa53               = "lib64"
> diff --git a/meta/conf/machine/include/tune-cortexa72.inc
> b/meta/conf/machine/include/tune-cortexa72.inc
> index 4c2306c4fd..00f7745a22 100644
> --- a/meta/conf/machine/include/tune-cortexa72.inc
> +++ b/meta/conf/machine/include/tune-cortexa72.inc
> @@ -8,6 +8,6 @@ require conf/machine/include/arm/arch-armv8a.inc
>  # Little Endian base configs
>  AVAILTUNES += "cortexa72"
>  ARMPKGARCH_tune-cortexa72             = "cortexa72"
> -TUNE_FEATURES_tune-cortexa72          = "aarch64 cortexa72 simd crc
> crypto"
> +TUNE_FEATURES_tune-cortexa72          = "aarch64 cortexa72 crc crypto"
>  PACKAGE_EXTRA_ARCHS_tune-cortexa72    =
> "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa72"
>  BASE_LIB_tune-cortexa72               = "lib64"
> --
> 2.17.1
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>

[-- Attachment #2: Type: text/html, Size: 8860 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] Remove the simd tune for armv8a
  2019-03-20 23:56 ` Khem Raj
@ 2019-03-21  7:01   ` Adrian Bunk
  0 siblings, 0 replies; 3+ messages in thread
From: Adrian Bunk @ 2019-03-21  7:01 UTC (permalink / raw)
  To: Khem Raj; +Cc: openembedded-core

On Wed, Mar 20, 2019 at 07:56:45PM -0400, Khem Raj wrote:
>...
> Has need to turn it off then they should chime back
> Since removing this just removes a detail which we can actually keep
> without much effort

Turning it off is the only part that would not be a nop,
but this would require adding +nosimd.

cu
Adrian

-- 

       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2019-03-21  7:02 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-03-19 11:45 [PATCH] Remove the simd tune for armv8a Adrian Bunk
2019-03-20 23:56 ` Khem Raj
2019-03-21  7:01   ` Adrian Bunk

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.