Skip to content

Commit

Permalink
Added support for LLVM 11 and improved Apple Silicon
Browse files Browse the repository at this point in the history
  • Loading branch information
syrusakbary committed Jan 12, 2021
1 parent 756d1d1 commit 52b62d6
Show file tree
Hide file tree
Showing 4 changed files with 18 additions and 5 deletions.
12 changes: 12 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,16 @@ ifneq (, $(shell which llvm-config 2>/dev/null))
ifneq (, $(findstring 10,$(LLVM_VERSION)))
compilers += llvm
endif
ifneq (, $(findstring 11,$(LLVM_VERSION)))
compilers += llvm
endif
else
ifneq (, $(shell which llvm-config-10 2>/dev/null))
compilers += llvm
endif
ifneq (, $(shell which llvm-config-11 2>/dev/null))
compilers += llvm
endif
endif

ifeq ($(ARCH), x86_64)
Expand Down Expand Up @@ -297,6 +303,9 @@ else
if [ -d "wapm-cli" ]; then \
cp wapm-cli/target/release/wapm package/bin/ ;\
fi
ifeq ($(UNAME_S), Darwin)
codesign -s - package/bin/wapm
endif
endif

package-wasmer:
Expand All @@ -305,6 +314,9 @@ ifeq ($(OS), Windows_NT)
cp target/release/wasmer.exe package/bin/
else
cp target/release/wasmer package/bin/
ifeq ($(UNAME_S), Darwin)
codesign -s - package/bin/wasmer
endif
endif

package-capi:
Expand Down
7 changes: 4 additions & 3 deletions tests/compilers/native_functions.rs
Original file line number Diff line number Diff line change
Expand Up @@ -162,12 +162,13 @@ fn non_native_functions_and_closures_with_no_env_work() -> Result<()> {
}

// The native ABI for functions fails when defining a function natively in
// macos (Darwin) with the Apple Silicon ARM chip
// TODO: Cranelift should have a good ABI for the ABI
// macos (Darwin) with the Apple Silicon ARM chip and Cranelift.
// We should enable it for LLVM in Apple Silicon, but now is not trivial.
// TODO: Fix once Cranelift has a correct ABI for Apple Silicon.
#[test]
#[cfg_attr(
all(
feature = "test-cranelift",
// feature = "test-cranelift",
target_os = "macos",
target_arch = "aarch64",
),
Expand Down
2 changes: 1 addition & 1 deletion tests/compilers/utils.rs
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ pub fn get_engine(canonicalize_nans: bool) -> impl Engine {
}
#[cfg(feature = "test-native")]
pub fn get_engine(canonicalize_nans: bool) -> impl Engine {
let mut compiler_config = get_compiler(canonicalize_nans);
let compiler_config = get_compiler(canonicalize_nans);
Native::new(compiler_config).engine()
}

Expand Down
2 changes: 1 addition & 1 deletion tests/compilers/wast.rs
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ fn get_store(features: Features, try_nan_canonicalization: bool) -> Store {

#[cfg(feature = "test-native")]
fn get_store(features: Features, try_nan_canonicalization: bool) -> Store {
let mut compiler_config = get_compiler(try_nan_canonicalization);
let compiler_config = get_compiler(try_nan_canonicalization);
Store::new(&Native::new(compiler_config).features(features).engine())
}

Expand Down

0 comments on commit 52b62d6

Please sign in to comment.