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"
|
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 ⇐ {'-'¨⌾(('_'=𝕩)⊸/)𝕩} 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"
|
{𝕊: "Error: Unsupported arch; options:"∾1↓∾", "⊸∾¨𝕩}_assert_(⊑arch<⊸∊⊢) "x86-64"‿"aarch64"‿"generic"
|
||||||
|
|
||||||
ffi ⇐ ((¬windows)∧¬wasm) DOpt "FFI"
|
ffi ⇐ ((¬windows)∧¬wasm) DOpt "FFI"
|
||||||
@ -223,6 +224,7 @@ po ← { # parsed options
|
|||||||
}⍟⊢ (arch≡"x86-64") ∧ singeli ∧ ¬avx2
|
}⍟⊢ (arch≡"x86-64") ∧ singeli ∧ ¬avx2
|
||||||
|
|
||||||
pie ⇐ {(¬shared)∧linux∧arch≡"x86-64"? 0; 1} DOpt "pie"
|
pie ⇐ {(¬shared)∧linux∧arch≡"x86-64"? 0; 1} DOpt "pie"
|
||||||
|
{𝕊: pie ↩ 0}⍟⊢ wasm
|
||||||
|
|
||||||
output ⇐ GetOpt "OUTPUT"
|
output ⇐ GetOpt "OUTPUT"
|
||||||
output ↩ •wdpath•file.At {𝕊:
|
output ↩ •wdpath•file.At {𝕊:
|
||||||
@ -269,8 +271,8 @@ po ← { # parsed options
|
|||||||
⟨"-Wno-parentheses"⟩ # gcc
|
⟨"-Wno-parentheses"⟩ # gcc
|
||||||
⟨ # clang
|
⟨ # clang
|
||||||
"-Wno-microsoft-anon-tag", "-Wno-bitwise-instead-of-logical", "-Wno-unknown-warning-option"
|
"-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@
|
args∾↩ 0⊑GetLibs@
|
||||||
|
|
||||||
|
|||||||
@ -23,7 +23,7 @@
|
|||||||
#include "../utils/hash.h"
|
#include "../utils/hash.h"
|
||||||
#include "../utils/talloc.h"
|
#include "../utils/talloc.h"
|
||||||
|
|
||||||
#if SINGELI_SIMD
|
#if SINGELI
|
||||||
#define SINGELI_FILE search
|
#define SINGELI_FILE search
|
||||||
#include "../utils/includeSingeli.h"
|
#include "../utils/includeSingeli.h"
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@ -73,12 +73,14 @@ fn copyOrdered{}(r:*f64, x:*f64, len:u64) : u1 = {
|
|||||||
0
|
0
|
||||||
}
|
}
|
||||||
|
|
||||||
export{'simd_search_u8', searchOne{u64, u8}}
|
if (hasarch{'X86_64'} or hasarch{'AARCH64'}) {
|
||||||
export{'simd_search_u16', searchOne{u64, u16}}
|
export{'simd_search_u8', searchOne{u64, u8}}
|
||||||
export{'simd_search_u32', searchOne{u64, u32}}
|
export{'simd_search_u16', searchOne{u64, u16}}
|
||||||
export{'simd_search_f64', searchOne{f64, f64}}
|
export{'simd_search_u32', searchOne{u64, u32}}
|
||||||
export{'simd_search_normalizable', searchNormalizable{}}
|
export{'simd_search_f64', searchOne{f64, f64}}
|
||||||
export{'simd_copy_ordered', copyOrdered{}}
|
export{'simd_search_normalizable', searchNormalizable{}}
|
||||||
|
export{'simd_copy_ordered', copyOrdered{}}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
# In-register bit table
|
# In-register bit table
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user