Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge changes from AntelopeIO #9

Merged
merged 54 commits into from
Sep 14, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
5dd5275
Update submodule URLs
arhag Aug 11, 2022
a0eafe5
Update softfloat submodule commit
arhag Aug 11, 2022
f9c7d41
Change eosnetworkfoundation/mandel-eos-vm to AntelopeIO/eos-vm
linh2931 Aug 11, 2022
4814679
Merge pull request #1 from AntelopeIO/remove_mandel_references
linh2931 Aug 11, 2022
d3d2671
Remove EOSIO references
linh2931 Aug 15, 2022
7db4b33
Merge pull request #2 from AntelopeIO/remove_eosio_references
linh2931 Aug 15, 2022
898eed3
fix is_callable_v
huangminghuang Oct 7, 2022
8345005
Merge pull request #4 from AntelopeIO/huangminghuang/auto-parameter-fix
huangminghuang Oct 27, 2022
1b6c096
Calling execute() with no `args` (i.e. `execute(host_type,jit_visitor…
ScottBailey Oct 28, 2022
398f033
Restrict warning ignore to a single line.
ScottBailey Nov 2, 2022
f490b33
Address review comment: push should be pop.
ScottBailey Nov 3, 2022
1592261
Merge pull request #5 from AntelopeIO/wall-fix
ScottBailey Nov 3, 2022
6765de2
Remove unneeded declared constructor.
greg7mdp Apr 21, 2023
329db27
Merge pull request #6 from AntelopeIO/c++20_update
greg7mdp Apr 24, 2023
00a3b00
EOS VM memory issues fix
linh2931 Jun 14, 2023
4da112c
Merge pull request #13 from AntelopeIO/memory_fix
linh2931 Jul 12, 2023
09e3f25
Merge remote-tracking branch 'origin/release/3.x' into merge_memory_i…
linh2931 Jul 12, 2023
3687798
Merge pull request #14 from AntelopeIO/merge_memory_issue_fix_from_3x
linh2931 Jul 12, 2023
1db2516
Merge remote-tracking branch 'origin/release/4.0' into merge_memory_i…
linh2931 Jul 12, 2023
1e9345f
Merge pull request #15 from AntelopeIO/merge_memory_issue_fix_from_4_0
linh2931 Jul 12, 2023
73a88d2
store wasm globals in execution context such that a single parsed mod…
linh2931 Jul 18, 2023
a5aadac
add more EOS_VM_ASSERT protections
linh2931 Jul 19, 2023
eb79615
revert the index check (the previous code did not do that)
linh2931 Jul 19, 2023
65568f5
add EOS_VM_ASSERT for interpreter set_global
linh2931 Jul 21, 2023
4d5415f
Merge pull request #16 from AntelopeIO/make_globals_threaded_safe
linh2931 Jul 26, 2023
0e694a9
parse WASM code only once for JIT
linh2931 Jul 27, 2023
c800ac7
use more constexpr and template type
linh2931 Jul 27, 2023
e88fd38
make code more concise and reserve vector size before use
linh2931 Jul 31, 2023
c28f152
remove reversed == operator as it is compiled into recursive function…
linh2931 Aug 1, 2023
380396e
provide capability to use a single execution context per thread
linh2931 Aug 4, 2023
169835e
Merge pull request #18 from AntelopeIO/parsing_wasm_once_for_jit
linh2931 Aug 7, 2023
9c5f548
use a more descriptive name for exec_ctx_created_by_backend and add m…
linh2931 Aug 8, 2023
def032f
Incorporate review comments
linh2931 Aug 10, 2023
8e1d571
Merge branch 'main' into decouple_exec_ctx
linh2931 Aug 10, 2023
74dd3f0
Merge pull request #19 from AntelopeIO/decouple_exec_ctx
linh2931 Aug 16, 2023
7d184fb
support single wasm interface
linh2931 Aug 23, 2023
b79fd16
remove copy constructor from backend and use a share method instead
linh2931 Aug 26, 2023
0bf509e
Merge remote-tracking branch 'AntelopeIO/main'
swatanabe Aug 30, 2023
1ba5596
Merge branch 'main' into merge-leap
swatanabe Aug 31, 2023
23d897d
prevent invalid sharing of compiled mod in backend
linh2931 Sep 1, 2023
f742642
elems are needed because tables are now mutable
swatanabe Sep 5, 2023
5f10fe3
Fix compile errors
swatanabe Sep 6, 2023
034dba5
Fix [get|set]_global for v128
swatanabe Sep 7, 2023
bf71f3a
If the table is dynamically allocated, it needs to be reset when the …
swatanabe Sep 7, 2023
f9ee616
Fix psibase compile errors
swatanabe Sep 7, 2023
9ec7735
Move mutable dropped field of elem and data into execution_context
swatanabe Sep 7, 2023
b06ac3d
Merge pull request #20 from AntelopeIO/eos_vm_single_wasmif
linh2931 Sep 8, 2023
5d88ced
Since we're copying to std::vector anyway, just use std::vector from …
swatanabe Sep 11, 2023
711c1a4
Move type_aliases and fast_functions to parser
swatanabe Sep 11, 2023
1a51bd6
Remove jit_mod now that it's no longer substantially different from t…
swatanabe Sep 11, 2023
3248f00
Make opcodes relocatable
swatanabe Sep 12, 2023
f5aff5f
Put pointer to globals in linear memory prefix region
swatanabe Sep 12, 2023
ef99468
Remove dead code
swatanabe Sep 12, 2023
ed17aff
Merge remote-tracking branch 'AntelopeIO/main' into merge-leap
swatanabe Sep 13, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@
url = https://github.com/catchorg/Catch2
[submodule "external/softfloat"]
path = external/softfloat
url = https://github.com/eosnetworkfoundation/mandel-berkeley-softfloat-3
url = https://github.com/AntelopeIO/berkeley-softfloat-3
148 changes: 0 additions & 148 deletions CONTRIBUTING.md

This file was deleted.

27 changes: 0 additions & 27 deletions IMPORTANT.md

This file was deleted.

2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
eosnetworkfoundation/mandel-eos-vm
AntelopeIO/eos-vm

Copyright (c) 2021-2022 EOS Network Foundation (ENF) and its contributors. All rights reserved.
This ENF software is based upon:
Expand Down
15 changes: 1 addition & 14 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ EOS VM is designed from the ground up for the high demands of blockchain applica

While EOS VM was designed for blockchain, we believe it is ideally suited for any application looking to embed a High Performance WebAssembly engine.

We designed EOS VM to meet the needs of EOSIO blockchains after using three of the most common WebAssembly engines: Binaryen, WABT, and WAVM. These WebAssembly engines were the single largest source of security issues impacting EOSIO blockchains. While WAVM provides extremely fast execution, it is not suited to running a live blockchain because it has extremely long and unpredictable compilation times and the need to recompile all contracts every time the process restarts. WABT was designed as a toolkit for manipulating WebAssembly first and as an execution engine second.
We designed EOS VM to meet the needs of [Antelope](https://github.com/AntelopeIO/) blockchains after using three of the most common WebAssembly engines: Binaryen, WABT, and WAVM. These WebAssembly engines were the single largest source of security issues impacting Antelope blockchains. While WAVM provides extremely fast execution, it is not suited to running a live blockchain because it has extremely long and unpredictable compilation times and the need to recompile all contracts every time the process restarts. WABT was designed as a toolkit for manipulating WebAssembly first and as an execution engine second.

We considered the WebAssembly engines used by the largest browsers, but they all come with considerable overhead and assumptions which are inappropriate for a reusable library or to be embedded in a blockchain. It is our hope that one day major browsers will opt to switch to EOS VM.

Expand Down Expand Up @@ -79,16 +79,3 @@ Extensions to Wasm itself can be made by simply defining the new section (aka C+

## Using EOS-VM
[Quick Overview](./docs/OVERVIEW.md)


## Contributing

[Contributing Guide](./CONTRIBUTING.md)

[Code of Conduct](./CONTRIBUTING.md#conduct)

## Important

See [LICENSE](./LICENSE) for copyright and license terms.

All repositories and other materials are provided subject to the terms of this [IMPORTANT](./IMPORTANT.md) notice and you must familiarize yourself with its terms. The notice contains important information, limitations and restrictions relating to our software, publications, trademarks, third-party resources, and forward-looking statements. By accessing any of our repositories and other materials, you accept and agree to the terms of the notice.
2 changes: 1 addition & 1 deletion external/softfloat
Submodule softfloat updated 1 files
+7 −3 CMakeLists.txt
Loading