Commit Graph

553 Commits

Author SHA1 Message Date
1daf3ed6dc Fix lint 2022-02-10 11:25:31 +09:00
82eed9acd4 Made relocations matching strictly in compiler-llvm 2022-02-09 21:41:01 +09:00
4e27e1164c Release version 2.2.0-rc1 2022-01-27 23:59:27 +00:00
ffb9cd33b9 Use trampolines for all libcalls in engine-universal and engine-dylib
In both of these engines, the compiled code may be loaded in memory far
from the Wasmer runtime which means that libcalls may not be reachable
through the normal relocation types. Instead a trampoline is needed to
allow reaching any address in the 64-bit address space.

In the case of engine-dylib, this is even worse since the symbols are
not exported by the executable without some special linker flags. The
solution here is to manually patch in the addresses at load time into
a data table of function pointers.
2022-01-20 11:47:20 +00:00
fb7a572415 Use exact version for Wasmer crate dependencies
We don't guarantee API compatibility between internal Wasmer crates when
making minor version bumps.
2022-01-19 21:35:09 +00:00
78eb5bc4c0 Fix alignment of WASMER_METADATA in the dylib engine
rykv requires this to be at least 16-byte aligned.
2022-01-04 16:23:49 +01:00
ebcea4a5c4 Release v2.1.1 2021-12-21 12:19:50 +01:00
c650ffea33 Version 2.1.0 2021-11-30 23:46:54 +00:00
aae99dda0d Update requirements 2021-11-30 21:00:06 +01:00
cca6a6b6cc Bump minimum required LLVM version to 12 2021-11-16 03:21:06 +00:00
2b104a8ecc Merge #2677
2677: Support 32-bit memories with 65536 pages r=ptitSeb a=Amanieu

Fixes #2187

Co-authored-by: Amanieu d'Antras <amanieu@gmail.com>
2021-11-10 15:49:43 +00:00
6a0b381763 Support 32-bit memories with 65536 pages
Fixes #2187
2021-11-10 14:49:32 +00:00
2b7669d346 fix(compiler) Fix BrTable on llvm compiler when non default is jumpting on loop_body 2021-11-09 11:44:47 +01:00
04a4758df0 Merge #2656
2656: update(compiler) switched upstream Inkwell (for #2645) r=Amanieu a=ptitSeb

# Description
Use upstream Inkwell instead of custom version

Co-authored-by: ptitSeb <sebastien.chev@gmail.com>
2021-11-05 12:58:17 +00:00
14431e5c61 fixed lint 2021-11-05 12:15:26 +01:00
d7bb25de90 update(compiler) fixed new warning 2021-11-05 12:12:36 +01:00
190d670eb9 fix linter 2021-11-05 09:59:58 +01:00
7ccd6af929 update(compiler) switched upstream Inkwell (for #2645) 2021-11-05 09:54:47 +01:00
7c67f7ce71 Remove unused nightly feature 2021-11-04 17:37:22 +00:00
8c24ab48db Some last small changes 2021-10-18 11:55:42 +02:00
eccc9dc77e Removed unused commented code 2021-10-12 13:30:57 +02:00
b54780cdab feat(compiler) Refactor the new ARM Reloc and Trampoline to avoid a &mut 2021-10-12 10:11:36 +02:00
0c6010ca34 feat(compiler) Use x17 as scratch instead of x16 on Aarch64 to help with Apple ABI 2021-10-08 16:19:31 +02:00
204238c9c9 feat(compiler) Fixed linting 2021-10-07 11:27:08 +02:00
9cf36055f2 feat(compiler) Don't try to use macOS Aarch64 specific ABI for now (at least coremark works now) 2021-10-07 11:24:32 +02:00
20f0c66fe6 feat(compiler) Added Trampolines and more Relocations for Arm64 (llvm-universal on linux-aarch64 are OK now) 2021-10-05 14:08:55 +02:00
21660e6d05 feat(compiler) Added preliminary support for Arm64Call relocation 2021-09-28 10:03:25 +02:00
12135eb062 fix(compiler) macOS Aarch64 ABI is not SystemV 2021-09-28 10:01:16 +02:00
f7dcb02a79 Updated version 2021-08-21 10:21:37 +01:00
6ddc2f6454 Add iOS support for Headless Wasmer 2021-08-21 10:21:37 +01:00
005d129529 Update all packages 2021-08-10 11:40:38 -07:00
98481f51fe Move ModuleInfo to wasmer-types 2021-07-16 15:42:39 -07:00
be70057830 add notes for llvm 2021-07-08 21:37:12 +08:00
15da6e8ce0 Added the 32 bit variant of x86 to generate a target machine for inkwell
Extended the match on X86_64 to include the X86_32 and all of its
architectures.
2021-06-20 21:01:38 +02:00
0c0fdad3d2 Prepare for 2.0.0 release 2021-06-15 11:26:46 -07:00
2fbbf36d7a chore(llvm) Update object to 0.25. 2021-06-08 09:01:00 +02:00
80a8658e5a Prepare for 2.0.0-rc2 release 2021-06-03 09:19:16 -07:00
1b95c9c6f2 Bump semver from 0.11.0 to 1.0.2
Bumps [semver](https://github.com/dtolnay/semver) from 0.11.0 to 1.0.2.
- [Release notes](https://github.com/dtolnay/semver/releases)
- [Commits](https://github.com/dtolnay/semver/compare/0.11.0...1.0.2)

---
updated-dependencies:
- dependency-name: semver
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-02 18:07:50 +00:00
cfc1a5fc26 Fix typo 2.0.0-rc -> 2.0.0-rc1 2021-06-02 08:32:46 -07:00
2897a5b05e Bump version number to 2.0.0-rc1 2021-06-02 08:21:34 -07:00
ec1430c51a cargo fmt 2021-05-31 15:21:10 +02:00
0b119a7045 cache into calls 2021-05-31 12:26:10 +02:00
bb73126880 Review 2021-05-31 11:15:30 +02:00
e5e51b9f07 Cleaning some bits 2021-05-28 18:31:36 +02:00
69cf276dfe Make the code compile with latest Inkwell changes 2021-05-28 18:14:06 +02:00
6a99268895 feat(llvm): Make NaN canonicalization configurable
compiler-llvm now uses the experimental.constrained intrinsics to ensure
correct behavior on FP operations when full-canonicalization is
disabled.

This patch requires TheDan64/inkwell#247
2021-05-28 11:40:10 +02:00
e5a784a006 feat: Rename wasmer-engine-jit to wasmer-engine-universal.
This (small) patch renames the `wasmer-engine-jit` crate into
`wasmer-engine-universal`.
2021-05-25 16:12:06 +02:00
58b18189da Updated dependencies 2021-05-14 15:47:03 -07:00
0d4fe293e5 Merge branch 'master' into feature/update-clif-small-simd-improvement 2021-05-13 15:38:40 -04:00
37be884403 Clean up F32x4DemoteF64x2Zero op in compiler llvm 2021-05-13 08:20:00 -07:00