Commit Graph

62 Commits

Author SHA1 Message Date
xermicus de3e7bf253 integration: add create2 test case with duplicate salt (#188)
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com>
2025-02-04 14:04:14 +01:00
xermicus bfda465c32 remove support for legacy evm assembly (#186) 2025-02-03 14:13:43 +01:00
xermicus 1a8a7926e9 implement the coinbase opcode (#179)
Signed-off-by: xermicus <cyrill@parity.io>
2025-01-29 15:24:45 +01:00
xermicus bec5d60b7c release resolc-0.1.0-dev.9 (#178)
Signed-off-by: xermicus <cyrill@parity.io>
2025-01-29 12:49:54 +01:00
xermicus 3608a5a143 runtime-api: pass call arguments in registers instead of spilling to stack (#174)
Companion to paritytech/polkadot-sdk#7319

Signed-off-by: xermicus <cyrill@parity.io>
2025-01-28 12:45:54 +01:00
Cyrill Leutwiler fe1b3258d2 bump crate versions (#171)
- bump crate versions
- point out the supported polkadot sdk version in the changelog
2025-01-17 17:29:38 +01:00
Cyrill Leutwiler bd1a22a702 update polkavm to 0.19 (#167)
paritytech/polkadot-sdk#7203 companion:

- Update the polkavm dependency to the latest version.
- Update the polkadot-sdk to the latest version.

Signed-off-by: xermicus <cyrill@parity.io>
2025-01-17 16:59:45 +01:00
Cyrill Leutwiler 3e7579580b vet workspace dependencies (#163)
- Update the used workspace dependencies.
- Remove the unused workspace dependencies.
- Add the machete CI workflow.
2025-01-15 20:14:54 +01:00
Cyrill Leutwiler ad805543b3 call and create set uncapped resource limits (#161)
- polkadot-sdk#6890 companion
- Adjust the gas price constant for the required polkadot-sdk version as a drive-by
2025-01-15 17:32:31 +01:00
Cyrill Leutwiler 7f81f37e0c revive llvm builder utility (#154)
Pre-eliminary support for LLVM releases and resolc binary releases by streamlining the build process for all supported hosts platforms.

- Introduce the revive-llvm-builder crate with the revive-llvm builder utilty.
- Do not rely on the LLVM dependency in $PATH to decouple the system LLVM installation from the LLVM host dependency.
- Fix the emscripten build by decoupling the host and native LLVM dependencies. Thus allowing a single LLVM emscripten release that can be used on any host platform.
- An example Dockerfile building an alpine container with a fully statically linked resolc ELF binary.
- Remove the Debian builder utilities and workflow.
2025-01-13 15:58:27 +01:00
Cyrill Leutwiler f49d145e9a update the minium supported rust version to 1.81 (#144)
Signed-off-by: xermicus <cyrill@parity.io>
2024-12-21 09:10:14 +01:00
Cyrill Leutwiler 952c5cc894 resolc-0.1.0-dev.7 (#143)
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com>
2024-12-20 14:33:08 +01:00
Cyrill Leutwiler d8752ec6b5 the basefee opcode (#142)
Signed-off-by: xermicus <cyrill@parity.io>
2024-12-19 18:59:10 +01:00
Cyrill Leutwiler 6ad846a285 the base fee opcode (#141)
Signed-off-by: xermicus <cyrill@parity.io>
2024-12-19 12:44:15 +01:00
Cyrill Leutwiler 3f9771f838 update and fix the linker (#140) 2024-12-18 23:11:06 +01:00
Cyrill Leutwiler 22070a824d the gas limit opcode (#139)
Signed-off-by: xermicus <cyrill@parity.io>
2024-12-18 20:31:42 +01:00
Cyrill Leutwiler d299dd1a19 change getters to register version (#138) 2024-12-18 17:56:37 +01:00
Cyrill Leutwiler 14a598e840 implement the gas opcode (#136) 2024-12-18 17:19:32 +01:00
Cyrill Leutwiler 909de515c4 Allow arbitrary call data size (#135)
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com>
2024-12-18 14:04:46 +01:00
Cyrill Leutwiler 4e5482bad2 fix the commit sha in the version (#129)
Signed-off-by: xermicus <cyrill@parity.io>
2024-12-03 12:34:17 +01:00
Cyrill Leutwiler 0110258d81 release 0.1.0 dev.6 (#128) 2024-11-29 17:45:47 +01:00
Cyrill Leutwiler 423a494621 Switch target to 64bit and enable the zbb feature (#120) 2024-11-29 15:56:10 +01:00
Ermal Kaleci 01b5ed5ba3 Implement delegate_call (#80) 2024-11-23 18:05:21 +01:00
Cyrill Leutwiler 3232382d96 update dependencies (#115)
Signed-off-by: xermicus <cyrill@parity.io>
2024-11-15 13:50:55 +01:00
Cyrill Leutwiler 4cce4a729e pre-release v0.1.0-dev.5 (#110) 2024-10-31 15:22:34 +01:00
Cyrill Leutwiler 43d2ef3ce9 implement the code size opcodes (#107) 2024-10-31 11:46:47 +01:00
Cyrill Leutwiler 36d9317831 update the polkadot-sdk and polkavm dependencies (#104)
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com>
2024-10-30 09:28:24 +01:00
Cyrill Leutwiler f985f42370 update polkadot-sdk and inkwell dependencies (#101)
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com>
2024-10-29 11:27:44 +01:00
Cyrill Leutwiler 995b115c5f bump polkadot-sdk and polkavm (#94)
Signed-off-by: xermicus <cyrill@parity.io>
2024-10-22 19:50:58 +02:00
Ermal Kaleci ee83d28a51 Implement extcodehash (#77) 2024-10-21 10:13:50 +02:00
Cyrill Leutwiler 5bf31db660 bump polkavm and polkadot-sdk (#87)
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com>
2024-10-15 10:46:20 +02:00
Cyrill Leutwiler d5d419cefc implement immutable variables codegen (#70) 2024-10-10 13:33:00 +02:00
xermicus b344e0cff5 Revert "implement immutable variables codegen"
This reverts commit 0e6a6d12c3.
2024-10-09 03:43:05 +02:00
xermicus 0e6a6d12c3 implement immutable variables codegen
Signed-off-by: xermicus <cyrill@parity.io>
2024-10-09 03:37:56 +02:00
wpt967 e8fcd6118e Merge pull request #55 from wpt967/revive-debian-x86-build
[workflows] Add workflow for building revive in a debian container.
2024-09-30 17:25:08 +01:00
wpt967 ad46e94ebd [workflows] Add workflow for building revive in a debian container.
Makefile: Add target 'install-revive' to build revive with the
installation path specified by variable REVIVE_INSTALL_DIR.

Add utils directory with scripts for building revive in a container.

Add utils/build-revive.sh taking option argument '-o <install-dir>' to
build revive with the specified install directory.

Add utils/revive-builder-debian.dockerfile to make a docker container
for building revive in a Debian environment.
2024-09-30 12:02:57 +01:00
Cyrill Leutwiler 6585973e99 Updated call semantics (#56)
- Update pallet-revive dependency
- Implement calls according to pallet-revive call semantics
- Switch to the new return data API in pallet revive and get rid of return data buffer
- Remove a bunch of resulting dead code
2024-09-28 20:03:03 +02:00
Cyrill Leutwiler 287272b789 sync runtime with the pallet (#54) 2024-09-24 09:14:36 +02:00
Cyrill Leutwiler f621971a13 move the repository to paritytech org (#49) 2024-09-17 14:53:17 +02:00
Cyrill Leutwiler 77df88b3cb update dependencies
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com>
2024-09-10 09:04:55 +02:00
Cyrill Leutwiler 2955f77772 implement self balance
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com>
2024-09-09 09:40:24 +02:00
Cyrill Leutwiler 393d90165e pallet_revive: Account20 (#41)
Signed-off-by: xermicus <cyrill@parity.io>
2024-09-04 12:42:41 +02:00
Cyrill Leutwiler d2f76b645f switch to pallet_revive runtime (#40)
Signed-off-by: xermicus <cyrill@parity.io>
2024-09-03 17:18:22 +02:00
xermicus 5d742d150d tidy up workspace
Signed-off-by: xermicus <cyrill@parity.io>
2024-08-24 16:09:07 +02:00
Cyrill Leutwiler 7844bbb604 add runner crate (#34)
Signed-off-by: xermicus <cyrill@parity.io>
Co-authored-by: xermicus <cyrill@parity.io>
Co-authored-by: pgherveou <pgherveou@gmail.com>
2024-08-24 03:20:52 +02:00
Cyrill Leutwiler 880305dbfb replace deprecated structopt crate with clap (#33)
Signed-off-by: xermicus <cyrill@parity.io>
2024-08-23 18:25:08 +02:00
Cyrill Leutwiler 184d40d377 Upgrade inkwell (#31)
Signed-off-by: xermicus <cyrill@parity.io>
2024-08-19 18:40:35 +02:00
Cyrill Leutwiler 06aa289d9b Constructors and contract creation (#11)
Implement constructor logic and support create/create2 in the mock runtime

Signed-off-by: xermicus <cyrill@parity.io>
2024-05-22 21:35:32 +02:00
Cyrill Leutwiler d8be21f156 update PolkaVM
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com>
2024-05-15 10:12:52 +02:00
Chris a75fc55133 feat: use PolkaVM disassembler (#6)
Integrate the PolkaVM disassembler to fix `--asm` output

Co-authored-by: Cyrill Leutwiler <bigcyrill@hotmail.com>
2024-05-03 12:31:24 +02:00