Replace goldmont-without-xsaves build with goldmont-without-sha-xsaves

For chromebooks, we need a new build variant whose target arch is
goldmont, but without SHA and XSAVES support (b/314243939#comment21)

Bug: 314243939
Test: Build an image with TARGET_ARCH_VARIANT:=goldmont-without-sha-xsaves
Change-Id: If73660b515b443d5c138ca367fa3d1c6f18485b5
This commit is contained in:
Satoshi Niwa 2024-01-24 16:17:00 +09:00
parent 1e33a311c6
commit b6d818dbf0
5 changed files with 31 additions and 29 deletions

View file

@ -34,11 +34,11 @@ var archVariants = map[ArchType][]string{
"broadwell",
"goldmont",
"goldmont-plus",
// Target arch is goldmont, but without xsaves support.
// Target arch is goldmont, but without supporting SHA and XSAVES.
// This ensures efficient execution on a broad range of Intel/AMD CPUs used
// in Chromebooks, including those lacking xsaves support.
// in Chromebooks, including those lacking SHA or XSAVES support.
// (e.g. Kaby Lake, Gemini Lake, Alder Lake and AMD Zen series)
"goldmont-without-xsaves",
"goldmont-without-sha-xsaves",
"haswell",
"icelake",
"ivybridge",
@ -57,7 +57,7 @@ var archVariants = map[ArchType][]string{
"broadwell",
"goldmont",
"goldmont-plus",
"goldmont-without-xsaves",
"goldmont-without-sha-xsaves",
"haswell",
"icelake",
"ivybridge",
@ -203,7 +203,7 @@ var androidArchFeatureMap = map[ArchType]map[string][]string{
"popcnt",
"movbe",
},
"goldmont-without-xsaves": {
"goldmont-without-sha-xsaves": {
"ssse3",
"sse4",
"sse4_1",
@ -373,7 +373,7 @@ var androidArchFeatureMap = map[ArchType]map[string][]string{
"aes_ni",
"popcnt",
},
"goldmont-without-xsaves": {
"goldmont-without-sha-xsaves": {
"ssse3",
"sse4",
"sse4_1",

View file

@ -49,8 +49,9 @@ var (
"goldmont-plus": []string{
"-march=goldmont-plus",
},
"goldmont-without-xsaves": []string{
"goldmont-without-sha-xsaves": []string{
"-march=goldmont",
"-mno-sha",
"-mno-xsaves",
},
"haswell": []string{

View file

@ -56,8 +56,9 @@ var (
"goldmont-plus": []string{
"-march=goldmont-plus",
},
"goldmont-without-xsaves": []string{
"goldmont-without-sha-xsaves": []string{
"-march=goldmont",
"-mno-sha",
"-mno-xsaves",
},
"haswell": []string{

View file

@ -28,16 +28,16 @@ var (
x86_64LinkFlags = []string{}
x86_64ArchVariantRustFlags = map[string][]string{
"": []string{},
"broadwell": []string{"-C target-cpu=broadwell"},
"goldmont": []string{"-C target-cpu=goldmont"},
"goldmont-plus": []string{"-C target-cpu=goldmont-plus"},
"goldmont-without-xsaves": []string{"-C target-cpu=goldmont", "-C target-feature=-xsaves"},
"haswell": []string{"-C target-cpu=haswell"},
"ivybridge": []string{"-C target-cpu=ivybridge"},
"sandybridge": []string{"-C target-cpu=sandybridge"},
"silvermont": []string{"-C target-cpu=silvermont"},
"skylake": []string{"-C target-cpu=skylake"},
"": []string{},
"broadwell": []string{"-C target-cpu=broadwell"},
"goldmont": []string{"-C target-cpu=goldmont"},
"goldmont-plus": []string{"-C target-cpu=goldmont-plus"},
"goldmont-without-sha-xsaves": []string{"-C target-cpu=goldmont", "-C target-feature=-sha,-xsaves"},
"haswell": []string{"-C target-cpu=haswell"},
"ivybridge": []string{"-C target-cpu=ivybridge"},
"sandybridge": []string{"-C target-cpu=sandybridge"},
"silvermont": []string{"-C target-cpu=silvermont"},
"skylake": []string{"-C target-cpu=skylake"},
//TODO: Add target-cpu=stoneyridge when rustc supports it.
"stoneyridge": []string{""},
"tremont": []string{"-C target-cpu=tremont"},

View file

@ -26,17 +26,17 @@ var (
x86LinkFlags = []string{}
x86ArchVariantRustFlags = map[string][]string{
"": []string{},
"atom": []string{"-C target-cpu=atom"},
"broadwell": []string{"-C target-cpu=broadwell"},
"goldmont": []string{"-C target-cpu=goldmont"},
"goldmont-plus": []string{"-C target-cpu=goldmont-plus"},
"goldmont-without-xsaves": []string{"-C target-cpu=goldmont", "-C target-feature=-xsaves"},
"haswell": []string{"-C target-cpu=haswell"},
"ivybridge": []string{"-C target-cpu=ivybridge"},
"sandybridge": []string{"-C target-cpu=sandybridge"},
"silvermont": []string{"-C target-cpu=silvermont"},
"skylake": []string{"-C target-cpu=skylake"},
"": []string{},
"atom": []string{"-C target-cpu=atom"},
"broadwell": []string{"-C target-cpu=broadwell"},
"goldmont": []string{"-C target-cpu=goldmont"},
"goldmont-plus": []string{"-C target-cpu=goldmont-plus"},
"goldmont-without-sha-xsaves": []string{"-C target-cpu=goldmont", "-C target-feature=-sha,-xsaves"},
"haswell": []string{"-C target-cpu=haswell"},
"ivybridge": []string{"-C target-cpu=ivybridge"},
"sandybridge": []string{"-C target-cpu=sandybridge"},
"silvermont": []string{"-C target-cpu=silvermont"},
"skylake": []string{"-C target-cpu=skylake"},
//TODO: Add target-cpu=stoneyridge when rustc supports it.
"stoneyridge": []string{""},
"tremont": []string{"-C target-cpu=tremont"},