Cyrill Leutwiler
9267a2af02
use the long revive version string in the contract metadata ( #109 )
2024-10-31 14:52:06 +01:00
Cyrill Leutwiler
173ace72cb
solidity: rename the revive metadata ( #106 )
...
Rename the revive metadata fields and includes the commit hash and LLVM version in the revive version (similar to what solc does).
Signed-off-by: xermicus <cyrill@parity.io >
2024-10-31 13:00:35 +01:00
Cyrill Leutwiler
68564f9866
display the git revision version information ( #105 )
...
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com >
2024-10-30 14:28:00 +01:00
Sebastian Miasojed
cc38c37481
Set evm.deployedBytecode to the value of evm.bytecode ( #95 )
2024-10-24 14:59:50 +02:00
Cyrill Leutwiler
e56feb95be
standard json output: skip serializing keys instead of emitting a null object ( #52 )
...
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com >
2024-10-23 15:28:28 +02:00
Cyrill Leutwiler
f0f344a139
disable sbrk and emulate EVM linear memory internally ( #76 )
...
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com >
Signed-off-by: xermicus <cyrill@parity.io >
2024-10-14 15:20:00 +02:00
Cyrill Leutwiler
92a18460e4
support solc 0.8.28 ( #84 )
...
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com >
2024-10-14 13:25:18 +02:00
Cyrill Leutwiler
49d2157a84
remove near calls
...
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com >
2024-10-11 15:58:28 +02:00
Cyrill Leutwiler
e131eebf50
remove system mode and request memoization
...
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com >
2024-10-11 15:58:28 +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
Cyrill Leutwiler
77fe683f18
remove the test encoding option ( #65 )
2024-10-04 09:59:27 +02: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
f621971a13
move the repository to paritytech org ( #49 )
2024-09-17 14:53:17 +02:00
Cyrill Leutwiler
d8c708eba5
support solc 0.8.27
...
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com >
2024-09-16 12:43:49 +02:00
wpt967
ac9215329c
[solidity] Fix wrong check on recursive-process-input CLI option. ( #42 )
2024-09-10 19:11:36 +02:00
Cyrill Leutwiler
2955f77772
implement self balance
...
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com >
2024-09-09 09:40:24 +02:00
xermicus
7c934e5ca1
fix some clippies
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-09-04 11:31:18 +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
Sebastian Miasojed
41c8d4e955
Add support for --license arg ( #38 )
2024-08-29 16:26:06 +02:00
xermicus
5d742d150d
tidy up workspace
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-08-24 16:09:07 +02:00
xermicus
0903718f07
add compiler helpers to solidity test utils
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-08-24 02:09:56 +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
wpt967
bb4a4dddde
[solidity,llvm-context] Improve support for debugging the compiler ( #32 )
...
Add option --recursive-process-input <filename> for use with
--recursive-process to specify the name of a file to use instead of
reading from stdin.
If --debug-output-dir is set, dump the file passed to the recursive
invocation of the compiler as a JSON file suitable for use with
--recursive-process-input.
These changes are intended to support debugging the compiler and are
only available with DEBUG builds.
2024-08-23 18:18:07 +02:00
dependabot[bot]
16a0cc46e6
Bump braces from 3.0.2 to 3.0.3 in /crates/solidity/src/tests/cli-tests ( #25 )
...
Bumps [braces](https://github.com/micromatch/braces ) from 3.0.2 to 3.0.3.
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md )
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3 )
---
updated-dependencies:
- dependency-name: braces
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-09 18:07:10 +02:00
xermicus
10c7045e15
Implement CODESIZE
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-06-06 15:10:21 +02:00
xermicus
39d78179d4
implement transient storage
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-06-05 17:34:17 +02:00
Cyrill Leutwiler
9e9227d740
Remove vyper and dead code ( #23 )
2024-06-05 13:29:07 +02:00
Cyrill Leutwiler
a04eacabff
Support solc v0.8.26 ( #22 )
2024-06-05 12:03:16 +02:00
xermicus
68ec8be49f
Implement the PUSHDEPLOYADDRESS instruction.
...
Introduction and raison d'être in solc:
https://github.com/ethereum/solidity/pull/3203
TL;DR: Exists to guard libraries from being called directly.
Hence we substitute PUSHDEPLOYADDRESS (the zero address) via a call
to the address API to let the library constructor fetch its own
address. In the zkSync target they do exactly the same.
Signed-off-by: xermicus <cyrill@parity.io >
2024-06-05 10:34:53 +02:00
Cyrill Leutwiler
1ba806be1f
Contract calls ( #19 )
2024-06-01 20:48:20 +02:00
Cyrill Leutwiler
532721f3be
Implement MCOPY ( #18 )
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-29 21:43:22 +02:00
xermicus
5138fe3d06
implement EXTCODESIZE
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-22 22:56:03 +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
864e40901f
implement address and msg.sender
...
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com >
2024-05-08 16:10:48 +02:00
xermicus
6f080bb9f4
rename binary to resolc
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-08 11:16:24 +02:00
xermicus
e958da5cd1
rename file extensions
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-08 11:02:05 +02:00
xermicus
b55669f5c5
remove the zkasm format
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-08 10:48:01 +02:00
Chris
169740eb5e
fix: addressed assembly text build mechanism ( #9 )
...
Use `build.assembly_text` for `--asm` output
2024-05-08 09:36:17 +02:00
xermicus
c0dd845b39
s/field/word
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-07 13:37:17 +02:00
xermicus
9f8a8a782d
1.78 clippies
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-06 14:34:51 +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
xermicus
336fc63f1d
rename target to polkavm
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-02 08:47:44 +02:00
xermicus
426f673b0a
use normal style for comments
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-01 16:12:32 +02:00
xermicus
72515254fe
rename llvm-context crate
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-01 15:45:09 +02:00
xermicus
44ae9e77d5
clippies
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-04-26 10:39:56 +02:00
Cyrill Leutwiler
df8ebb61ec
Integrate benchmarks and differential tests against an EVM interpreter ( #7 )
2024-04-24 18:51:19 +02:00
xermicus
bd10742ef8
allow solc v0.8.25
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-04-23 11:47:16 +02:00
xermicus
7aa27516e4
remove zkEVM extensions
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-04-15 15:22:23 +02:00