arch: add support for AMD steamroller
authorGustavo Zacarias <gustavo@zacarias.com.ar>
Tue, 3 Mar 2015 15:52:30 +0000 (12:52 -0300)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Wed, 4 Mar 2015 21:16:41 +0000 (22:16 +0100)
Add support for AMD steamroller optimizations, available in gcc 4.8+ as
bdver3.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
arch/Config.in.x86
package/gcc/Config.in.host
toolchain/toolchain-external/Config.in

index 8a844dbe94ae962158fbee0c4b5e6a1152513cee..d5788b12334617218df59d4292d8102eccc2db6a 100644 (file)
@@ -139,6 +139,15 @@ config BR2_x86_jaguar
        select BR2_X86_CPU_HAS_SSSE3
        select BR2_X86_CPU_HAS_SSE4
        select BR2_X86_CPU_HAS_SSE42
+config BR2_x86_steamroller
+       bool "steamroller"
+       select BR2_X86_CPU_HAS_MMX
+       select BR2_X86_CPU_HAS_SSE
+       select BR2_X86_CPU_HAS_SSE2
+       select BR2_X86_CPU_HAS_SSE3
+       select BR2_X86_CPU_HAS_SSSE3
+       select BR2_X86_CPU_HAS_SSE4
+       select BR2_X86_CPU_HAS_SSE42
 config BR2_x86_geode
        bool "geode"
        # Don't include MMX support because there several variant of geode
@@ -189,6 +198,7 @@ config BR2_ARCH
        default "i686"          if BR2_x86_opteron_sse3 && BR2_i386
        default "i686"          if BR2_x86_barcelona && BR2_i386
        default "i686"          if BR2_x86_jaguar && BR2_i386
+       default "i686"          if BR2_x86_steamroller && BR2_i386
        default "i686"          if BR2_x86_k6
        default "i686"          if BR2_x86_k6_2
        default "i686"          if BR2_x86_athlon
@@ -221,6 +231,7 @@ config BR2_GCC_TARGET_ARCH
        default "k8-sse3"       if BR2_x86_opteron_sse3
        default "barcelona"     if BR2_x86_barcelona
        default "btver2"        if BR2_x86_jaguar
+       default "bdver3"        if BR2_x86_steamroller
        default "k6"            if BR2_x86_k6
        default "k6-2"          if BR2_x86_k6_2
        default "athlon"        if BR2_x86_athlon
index dd61f51a96f0c6448be813e16c42f0a1b7c090e1..e07d881444e8663859922004de5984e828079b2f 100644 (file)
@@ -29,7 +29,7 @@ choice
                # SPARC -mcpu=leon3 appeared in gcc 4.8.x
                depends on !BR2_sparc_leon3
                # Broken or unsupported X86 cores
-               depends on !BR2_x86_corei7 && !BR2_x86_jaguar
+               depends on !BR2_x86_corei7 && !BR2_x86_jaguar && !BR2_x86_steamroller
                # ARM EABIhf support appeared in gcc 4.6
                depends on !BR2_ARM_EABIHF
                # musl patches only for gcc 4.7+
@@ -49,7 +49,7 @@ choice
                # SPARC -mcpu=leon3 appeared in gcc 4.8.x
                depends on !BR2_sparc_leon3
                # Broken or unsupported x86 cores
-               depends on !BR2_x86_jaguar
+               depends on !BR2_x86_jaguar && !BR2_x86_steamroller
                select BR2_GCC_NEEDS_MPC
 
        config BR2_GCC_VERSION_4_8_X
index 4321e434d0dc03578b098d7a42881ea744cdeb50..e70c3ce19020639a70dafab1ddac9edffaf46adc 100644 (file)
@@ -676,6 +676,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201209
        depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
        depends on !BR2_STATIC_LIBS
        depends on !BR2_x86_jaguar
+       depends on !BR2_x86_steamroller
        select BR2_TOOLCHAIN_EXTERNAL_GLIBC
        select BR2_TOOLCHAIN_HAS_NATIVE_RPC
        select BR2_INSTALL_LIBSTDCPP
@@ -703,6 +704,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201203
        depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
        depends on !BR2_STATIC_LIBS
        depends on !BR2_x86_jaguar
+       depends on !BR2_x86_steamroller
        select BR2_TOOLCHAIN_EXTERNAL_GLIBC
        select BR2_INSTALL_LIBSTDCPP
        select BR2_HOSTARCH_NEEDS_IA32_LIBS
@@ -729,6 +731,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201109
        depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
        depends on !BR2_STATIC_LIBS
        depends on !BR2_x86_jaguar
+       depends on !BR2_x86_steamroller
        select BR2_TOOLCHAIN_EXTERNAL_GLIBC
        select BR2_TOOLCHAIN_HAS_NATIVE_RPC
        select BR2_INSTALL_LIBSTDCPP