summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <[email protected]>2023-02-25 00:53:20 +0800
committerruki <[email protected]>2023-02-25 00:53:20 +0800
commitb1cd84641fd56aeb204a045f80be0cecceb02b37 (patch)
treeb88a431bd55ea2f6080764d47b26bc54b2915530
parentf6b383d36a3679bc968bd4a3e7ceade92d950fcb (diff)
add fma
-rw-r--r--xmake/modules/core/tools/cl.lua1
-rw-r--r--xmake/modules/core/tools/gcc.lua1
-rw-r--r--xmake/modules/private/check/checkers/api/target/vectorexts.lua3
3 files changed, 4 insertions, 1 deletions
diff --git a/xmake/modules/core/tools/cl.lua b/xmake/modules/core/tools/cl.lua
index cc19978b9..2a0bc556c 100644
--- a/xmake/modules/core/tools/cl.lua
+++ b/xmake/modules/core/tools/cl.lua
@@ -184,6 +184,7 @@ function nf_vectorext(self, extension)
, sse2 = "-arch:SSE2"
, avx = "-arch:AVX"
, avx2 = "-arch:AVX2"
+ , fma = "-arch:AVX2"
}
local flag = maps[extension]
if flag and self:has_flags(flag, "cxflags") then
diff --git a/xmake/modules/core/tools/gcc.lua b/xmake/modules/core/tools/gcc.lua
index b8a05832c..84a1d187f 100644
--- a/xmake/modules/core/tools/gcc.lua
+++ b/xmake/modules/core/tools/gcc.lua
@@ -166,6 +166,7 @@ function nf_vectorext(self, extension)
, ssse3 = "-mssse3"
, avx = "-mavx"
, avx2 = "-mavx2"
+ , fma = "-mfma"
, neon = "-mfpu=neon"
}
return maps[extension]
diff --git a/xmake/modules/private/check/checkers/api/target/vectorexts.lua b/xmake/modules/private/check/checkers/api/target/vectorexts.lua
index 77f9ee48c..3c7a97450 100644
--- a/xmake/modules/private/check/checkers/api/target/vectorexts.lua
+++ b/xmake/modules/private/check/checkers/api/target/vectorexts.lua
@@ -23,5 +23,6 @@ import(".api_checker")
function main(opt)
opt = opt or {}
- api_checker.check_targets("vectorexts", table.join(opt, {values = {"none", "sse", "sse2", "sse3", "ssse3", "avx", "avx2", "neon"}}))
+ api_checker.check_targets("vectorexts", table.join(opt, {values = {
+ "none", "sse", "sse2", "sse3", "ssse3", "avx", "avx2", "fma", "neon"}}))
end