[*] Set explicit clang microarchitecture targets of x86_32 and x86_64 processors
This commit is contained in:
parent
051e453cad
commit
f1414cd7ec
@ -157,6 +157,26 @@ local function configureProjectForPlatforms(projType)
|
||||
end)
|
||||
end
|
||||
|
||||
local function configureProjectCPUTarget()
|
||||
filter { "toolset:clang", "architecture:x86_64"}
|
||||
-- Some discount VPSes might be running on this dead architecture
|
||||
-- Haswell introduced AVX2.
|
||||
-- clang cpu levels: x86_64-v4 contains meme avx512 instructions and beyond, x86_64-v3 includes AVX1+2, x86_64-v2 doesn't have any AVX whatsoever.
|
||||
-- Dunno if intentional because SSE4.1 >= AVX, but either way, let's get some modern CPU features in an otherwise widely supported binary.
|
||||
-- Lets sit between v2 and v3 by a single intel generation.
|
||||
buildoptions { "-march=ivybridge" }
|
||||
defines {"AURORA_RUNTIME_MEMSET=__builtin_memset"}
|
||||
defines {"AURORA_RUNTIME_MEMCPY=__builtin_memcpy"}
|
||||
filter {}
|
||||
|
||||
filter { "toolset:clang", "architecture:x86"}
|
||||
-- Let Linux x86_32 support Intel Core+ (2006) CPUs
|
||||
buildoptions { "-march=core2" }
|
||||
defines {"AURORA_RUNTIME_MEMSET=__builtin_memset"}
|
||||
defines {"AURORA_RUNTIME_MEMCPY=__builtin_memcpy"}
|
||||
filter {}
|
||||
end
|
||||
|
||||
local function configureProjectErrors()
|
||||
if (not Aurora.Settings.bDisableWarningsThatAnnoyRec) then
|
||||
return
|
||||
@ -194,7 +214,7 @@ local function configureProjectErrors()
|
||||
"unknown-warning-option"
|
||||
}
|
||||
|
||||
filter{}
|
||||
filter {}
|
||||
|
||||
if (targetingCmake) then
|
||||
filter {"toolset:msc"}
|
||||
@ -379,6 +399,7 @@ local function setupProject(prj)
|
||||
configureProjectForSolution(prj)
|
||||
configureProjectErrors()
|
||||
configureProjectForCompiler()
|
||||
configureProjectCPUTarget()
|
||||
configureProjectForPlatforms(prj.projectType)
|
||||
configureProjectForTarget()
|
||||
configureProjectForDebug(prj)
|
||||
|
Loading…
Reference in New Issue
Block a user