From 8a35405d330ed9f69f6a34ca6d5e75ccc2c64540 Mon Sep 17 00:00:00 2001 From: Dan Willemsen Date: Tue, 10 May 2016 14:30:51 -0700 Subject: Add a 32-bit x86_64 arch variant In make, the current 32-bit configuration for generic x86_64 targets inherits some variables (SSE4 support) from the 64-bit configuration, and overrides the make variables used for other configurations (SSSE3). We don't have that problem in Soong, but this is the configuration matching what Make is using. Change-Id: Ia934ff40f9388f9c202a0fe0608e7b45b77a2714 --- cc/x86_device.go | 9 +++++++++ common/arch.go | 3 +++ 2 files changed, 12 insertions(+) diff --git a/cc/x86_device.go b/cc/x86_device.go index c1bdfd55..4c0d6248 100644 --- a/cc/x86_device.go +++ b/cc/x86_device.go @@ -73,6 +73,9 @@ var ( "": []string{ "-march=prescott", }, + "x86_64": []string{ + "-march=prescott", + }, "atom": []string{ "-march=atom", "-mfpmath=sse", @@ -110,6 +113,12 @@ const ( ) func init() { + common.RegisterArchFeatures(common.X86, "x86_64", + "ssse3", + "sse4", + "sse4_1", + "sse4_2", + "popcnt") common.RegisterArchFeatures(common.X86, "atom", "ssse3", "movbe") diff --git a/common/arch.go b/common/arch.go index 8ad50871..4176cd1a 100644 --- a/common/arch.go +++ b/common/arch.go @@ -186,6 +186,8 @@ type archProperties struct { Ivybridge interface{} `blueprint:"filter(android:\"arch_variant\")"` Sandybridge interface{} `blueprint:"filter(android:\"arch_variant\")"` Silvermont interface{} `blueprint:"filter(android:\"arch_variant\")"` + // Generic variant for X86 on X86_64 + X86_64 interface{} `blueprint:"filter(android:\"arch_variant\")"` // X86 arch features Ssse3 interface{} `blueprint:"filter(android:\"arch_variant\")"` @@ -955,6 +957,7 @@ func decodeMegaDevice() ([]Arch, error) { {"x86", "ivybridge", "", []string{"x86"}}, {"x86", "sandybridge", "", []string{"x86"}}, {"x86", "silvermont", "", []string{"x86"}}, + {"x86", "x86_64", "", []string{"x86"}}, {"x86_64", "", "", []string{"x86_64"}}, {"x86_64", "haswell", "", []string{"x86_64"}}, {"x86_64", "ivybridge", "", []string{"x86_64"}}, -- cgit v1.2.3