Sebastian Miasojed
41c8d4e955
Add support for --license arg ( #38 )
2024-08-29 16:26:06 +02:00
Cyrill Leutwiler
d763e30b8f
Simplify test case declaration ( #36 )
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-08-26 15:15:33 +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
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
xermicus
44bc7b94b2
typo
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-08-05 18:27:38 +02:00
xermicus
b002382d76
llvm build script: build compiler-rt for 64bit
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-07-19 00:06:53 +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
6834751522
support riscv64 target
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-07-09 17:57:58 +02:00
xermicus
a4c4ad55dc
remove extensions crate
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-06-18 16:08:35 +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
caa1228720
Run all tests on CI ( #21 )
...
Run all tests on CI
Signed-off-by: xermicus <cyrill@parity.io >
2024-06-05 00:50:03 +02:00
xermicus
d9a304d162
integration: cache contract blob artifacts after compilation
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-06-04 19:14:52 +02:00
xermicus
2d0a0e2e81
implement BYTE
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-06-04 18:45:06 +02:00
xermicus
354b1c8d79
do not byte swap storage values
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-06-03 17:16:49 +02:00
Cyrill Leutwiler
5ff17da695
Implement balance ( #20 )
2024-06-03 12:21:49 +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
Cyrill Leutwiler
bdaf573f17
integration tests on CI ( #12 )
...
Run integration tests on CI
2024-05-24 20:27:28 +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
42697edc67
update extensive benchmarks
...
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com >
2024-05-16 09:58:00 +02:00
Cyrill Leutwiler
d8be21f156
update PolkaVM
...
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com >
2024-05-15 10:12:52 +02:00
xermicus
47d5d6b394
dedicated functions for logging events adds even more code size on 32bit
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-14 11:08:35 +02:00
xermicus
83bf9d6041
events
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-14 09:46:18 +02:00
xermicus
2194aeebd0
constant values for basefee and difficulty
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-13 18:47:36 +02:00
xermicus
02055c73bb
extend mock runtime to allow executing constructors and cross contract calls
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-13 13:50:35 +02:00
xermicus
0e90317488
add contract name to integration to integration test cases
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-10 13:47:47 +02:00
xermicus
03a1918993
parallelize tests
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-10 10:54:01 +02:00
xermicus
5f5ec1a539
simplify wrapped divisions and sdiv cfg
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-10 10:16:40 +02:00
xermicus
6af889c1ff
implement division and remainder operations
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-08 23:21:16 +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
Cyrill Leutwiler
ea63991617
implement address and msg.sender
...
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com >
2024-05-08 16:09:23 +02:00
Cyrill Leutwiler
f80a96059d
allow register sized int type for memory offsets
...
Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com >
2024-05-08 15:55:24 +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
95ff85c6d1
implement block.number and block.timestamp
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-07 18:03:17 +02:00
xermicus
a7318f2ef6
implement helper for easy allocation of a word on the stack
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-07 13:40:54 +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
xermicus
b1a3a452ac
internalize register size
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-06 14:30:32 +02:00
xermicus
518c03d045
internalize runtime API function symbols
...
Signed-off-by: xermicus <cyrill@parity.io >
2024-05-06 13:45:58 +02:00