a bunch of fixes for generic architecture & wasm
This commit is contained in:
parent
65868a51ba
commit
e4d222173d
@ -200,6 +200,7 @@ po ← { # parsed options
|
||||
linux‿bsd‿macos‿windows ← os⊸≡¨ {𝕊: "Error: Unsupported OS; options:"∾1↓∾", "⊸∾¨𝕩}_assert_(⊑os<⊸∊⊢) "linux"‿"bsd"‿"macos"‿"windows"
|
||||
|
||||
arch ⇐ {'-'¨⌾(('_'=𝕩)⊸/)𝕩} Lowercase {InUname"x86_64"? "x86-64"; ∨´InUname¨"aarch64"‿"arm64"? "aarch64"; "generic"} DOpt "arch"
|
||||
{𝕊: arch ↩ "generic"}⍟⊢ wasm
|
||||
{𝕊: "Error: Unsupported arch; options:"∾1↓∾", "⊸∾¨𝕩}_assert_(⊑arch<⊸∊⊢) "x86-64"‿"aarch64"‿"generic"
|
||||
|
||||
ffi ⇐ ((¬windows)∧¬wasm) DOpt "FFI"
|
||||
@ -223,6 +224,7 @@ po ← { # parsed options
|
||||
}⍟⊢ (arch≡"x86-64") ∧ singeli ∧ ¬avx2
|
||||
|
||||
pie ⇐ {(¬shared)∧linux∧arch≡"x86-64"? 0; 1} DOpt "pie"
|
||||
{𝕊: pie ↩ 0}⍟⊢ wasm
|
||||
|
||||
output ⇐ GetOpt "OUTPUT"
|
||||
output ↩ •wdpath•file.At {𝕊:
|
||||
@ -269,8 +271,8 @@ po ← { # parsed options
|
||||
⟨"-Wno-parentheses"⟩ # gcc
|
||||
⟨ # clang
|
||||
"-Wno-microsoft-anon-tag", "-Wno-bitwise-instead-of-logical", "-Wno-unknown-warning-option"
|
||||
"-mllvm", "--x86-cmov-converter=0" # thing that converts `cmov`s to branching sometimes (?), but we don't want that
|
||||
⟩
|
||||
(¬wasm)/⟨"-mllvm", "--x86-cmov-converter=0"⟩ # thing that converts `cmov`s to branching sometimes (?), but we don't want that
|
||||
⟩
|
||||
args∾↩ 0⊑GetLibs@
|
||||
|
||||
|
||||
@ -23,7 +23,7 @@
|
||||
#include "../utils/hash.h"
|
||||
#include "../utils/talloc.h"
|
||||
|
||||
#if SINGELI_SIMD
|
||||
#if SINGELI
|
||||
#define SINGELI_FILE search
|
||||
#include "../utils/includeSingeli.h"
|
||||
#endif
|
||||
|
||||
@ -73,12 +73,14 @@ fn copyOrdered{}(r:*f64, x:*f64, len:u64) : u1 = {
|
||||
0
|
||||
}
|
||||
|
||||
export{'simd_search_u8', searchOne{u64, u8}}
|
||||
export{'simd_search_u16', searchOne{u64, u16}}
|
||||
export{'simd_search_u32', searchOne{u64, u32}}
|
||||
export{'simd_search_f64', searchOne{f64, f64}}
|
||||
export{'simd_search_normalizable', searchNormalizable{}}
|
||||
export{'simd_copy_ordered', copyOrdered{}}
|
||||
if (hasarch{'X86_64'} or hasarch{'AARCH64'}) {
|
||||
export{'simd_search_u8', searchOne{u64, u8}}
|
||||
export{'simd_search_u16', searchOne{u64, u16}}
|
||||
export{'simd_search_u32', searchOne{u64, u32}}
|
||||
export{'simd_search_f64', searchOne{f64, f64}}
|
||||
export{'simd_search_normalizable', searchNormalizable{}}
|
||||
export{'simd_copy_ordered', copyOrdered{}}
|
||||
}
|
||||
|
||||
|
||||
# In-register bit table
|
||||
|
||||
Loading…
Reference in New Issue
Block a user