Skip to content

Commit c148099

Browse files
rv-jenkinsrv-auditoranvacaru
authored
Update dependency: deps/kevm_release (#619)
* deps/kevm_release: Set Version 1.0.596 * Set Version: 0.1.309 * Sync Poetry files: kevm-pyk version 1.0.596 * flake.{nix,lock}: update Nix derivations * deps/kevm_release: Set Version 1.0.597 * Sync Poetry files: kevm-pyk version 1.0.597 * flake.{nix,lock}: update Nix derivations * support bytes jumpdests * update expected output * deps/kevm_release: Set Version 1.0.598 * Sync Poetry files: kevm-pyk version 1.0.598 * flake.{nix,lock}: update Nix derivations * update cse expected output and test_foundry_split_node * split-node.expected: update expected output --------- Co-authored-by: devops <[email protected]> Co-authored-by: Andrei <[email protected]>
1 parent 6f91fbb commit c148099

24 files changed

+996
-2420
lines changed

deps/kevm_release

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1.0.595
1+
1.0.598

flake.lock

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

flake.nix

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
description = "Kontrol";
33

44
inputs = {
5-
kevm.url = "github:runtimeverification/evm-semantics/v1.0.595";
5+
kevm.url = "github:runtimeverification/evm-semantics/v1.0.598";
66
nixpkgs.follows = "kevm/nixpkgs";
77
nixpkgs-pyk.follows = "kevm/nixpkgs-pyk";
88
k-framework.follows = "kevm/k-framework";

package/version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
0.1.308
1+
0.1.309

poetry.lock

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pyproject.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,15 @@ build-backend = "poetry.core.masonry.api"
44

55
[tool.poetry]
66
name = "kontrol"
7-
version = "0.1.308"
7+
version = "0.1.309"
88
description = "Foundry integration for KEVM"
99
authors = [
1010
"Runtime Verification, Inc. <[email protected]>",
1111
]
1212

1313
[tool.poetry.dependencies]
1414
python = "^3.10"
15-
kevm-pyk = { git = "https://github.com/runtimeverification/evm-semantics.git", tag = "v1.0.595", subdirectory = "kevm-pyk" }
15+
kevm-pyk = { git = "https://github.com/runtimeverification/evm-semantics.git", tag = "v1.0.598", subdirectory = "kevm-pyk" }
1616

1717
[tool.poetry.group.dev.dependencies]
1818
autoflake = "*"

src/kontrol/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@
55
if TYPE_CHECKING:
66
from typing import Final
77

8-
VERSION: Final = '0.1.308'
8+
VERSION: Final = '0.1.309'

src/kontrol/prove.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
from pyk.kcfg import KCFG, KCFGExplore
1717
from pyk.kore.rpc import KoreClient, TransportType, kore_server
1818
from pyk.prelude.bytes import bytesToken
19-
from pyk.prelude.collections import list_empty, map_empty, map_of, set_empty, set_of
19+
from pyk.prelude.collections import list_empty, map_empty, map_of, set_empty
2020
from pyk.prelude.k import GENERATED_TOP_CELL
2121
from pyk.prelude.kbool import FALSE, TRUE, notBool
2222
from pyk.prelude.kint import intToken
@@ -373,6 +373,7 @@ def create_kcfg_explore() -> KCFGExplore:
373373
options.break_on_calls,
374374
options.break_on_storage,
375375
options.break_on_basic_blocks,
376+
options.break_on_load_program,
376377
)
377378
if options.break_on_cheatcodes:
378379
cut_point_rules.extend(
@@ -790,7 +791,7 @@ def _init_cterm(
790791
if not trace_options:
791792
trace_options = TraceOptions({})
792793

793-
jumpdests = set_of(_process_jumpdests(bytecode=program, offset=0))
794+
jumpdests = bytesToken(_process_jumpdests(bytecode=program))
794795
init_subst = {
795796
'MODE_CELL': KApply('NORMAL'),
796797
'USEGAS_CELL': TRUE if use_gas else FALSE,

src/tests/integration/test-data/foundry-show

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,4 @@ AssertTest.test_revert_branch(uint256,uint256)
88
AssumeTest.test_assume_false(uint256,uint256)
99
AssumeTest.testFail_assume_false(uint256,uint256)
1010
AssumeTest.testFail_assume_true(uint256,uint256)
11-
ImmutableVarsTest.test_run_deployment(uint256)
1211
SetUpDeployTest.test_extcodesize()

src/tests/integration/test-data/pausability-lemmas.k

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,9 @@ module PAUSABILITY-LEMMAS [symbolic]
175175
andBool SRC +Int LENGTH <=Int DEST // No overlap between source and destination
176176
andBool DEST <=Int lengthBytes(LM) // Destination starts within current memory
177177
// All JUMPDESTs in the program are valid
178-
andBool (PCOUNT +Int 3) in JUMPDESTS andBool (PCOUNT +Int 27) in JUMPDESTS andBool (PCOUNT +Int 42) in JUMPDESTS
178+
andBool ((PCOUNT +Int 3) <=Int lengthBytes(JUMPDESTS) andBool JUMPDESTS[PCOUNT +Int 3] ==Int 1)
179+
andBool ((PCOUNT +Int 27) <=Int lengthBytes(JUMPDESTS) andBool JUMPDESTS[PCOUNT +Int 27] ==Int 1)
180+
andBool ((PCOUNT +Int 42) <=Int lengthBytes(JUMPDESTS) andBool JUMPDESTS[PCOUNT +Int 42] ==Int 1)
179181
andBool PCOUNT +Int 42 <Int 2 ^Int 16 // and fit into two bytes
180182
[priority(30), concrete(JUMPDESTS, PROGRAM, PCOUNT), preserves-definedness]
181183

src/tests/integration/test-data/show/ArithmeticCallTest.test_double_add(uint256,uint256).cse.expected

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
│ statusCode: STATUSCODE:StatusCode
77
88
│ (1024 steps)
9-
├─ 11 (split)
9+
├─ 7 (split)
1010
│ k: #execute ~> #return 128 32 ~> #pc [ STATICCALL ] ~> #execute ~> CONTINUATION:K
1111
│ pc: 0
1212
│ callDepth: 1
@@ -15,14 +15,14 @@
1515
┃ (branch)
1616
┣━━┓ constraint: ( maxUInt256 -Int VV1_y_114b9705:Int ) <Int VV0_x_114b9705:Int
1717
┃ │
18-
┃ ├─ 13
18+
┃ ├─ 9
1919
┃ │ k: #execute ~> #return 128 32 ~> #pc [ STATICCALL ] ~> #execute ~> CONTINUATION:K
2020
┃ │ pc: 0
2121
┃ │ callDepth: 1
2222
┃ │ statusCode: STATUSCODE:StatusCode
2323
┃ │
2424
┃ │ (73 steps)
25-
┃ └─ 15 (leaf, terminal)
25+
┃ └─ 11 (leaf, terminal)
2626
┃ k: #halt ~> CONTINUATION:K
2727
┃ pc: 2357
2828
┃ callDepth: 0
@@ -32,14 +32,14 @@
3232
┃ ┃ VV0_x_114b9705:Int <=Int ( maxUInt256 -Int VV1_y_114b9705:Int )
3333
┃ ┃ ( maxUInt256 -Int VV1_y_114b9705:Int ) <Int ( VV0_x_114b9705:Int +Int VV1_y_114b9705:Int )
3434
┃ │
35-
┃ ├─ 27
35+
┃ ├─ 21
3636
┃ │ k: #execute ~> #return 128 32 ~> #pc [ STATICCALL ] ~> #execute ~> CONTINUATION:K
3737
┃ │ pc: 0
3838
┃ │ callDepth: 1
3939
┃ │ statusCode: STATUSCODE:StatusCode
4040
┃ │
4141
┃ │ (486 steps)
42-
┃ └─ 21 (leaf, terminal)
42+
┃ └─ 15 (leaf, terminal)
4343
┃ k: #halt ~> CONTINUATION:K
4444
┃ pc: 2474
4545
┃ callDepth: 0
@@ -50,22 +50,22 @@
5050
┃ ┃ ( VV0_x_114b9705:Int +Int VV1_y_114b9705:Int ) <=Int ( maxUInt256 -Int VV1_y_114b9705:Int )
5151
┃ ┃ VV0_x_114b9705:Int <Int ( ( VV0_x_114b9705:Int +Int VV1_y_114b9705:Int ) +Int VV1_y_114b9705:Int )
5252
┃ │
53-
┃ ├─ 30
53+
┃ ├─ 24
5454
┃ │ k: #execute ~> #return 128 32 ~> #pc [ STATICCALL ] ~> #execute ~> CONTINUATION:K
5555
┃ │ pc: 0
5656
┃ │ callDepth: 1
5757
┃ │ statusCode: STATUSCODE:StatusCode
5858
┃ │
5959
┃ │ (735 steps)
60-
┃ ├─ 24 (terminal)
60+
┃ ├─ 18 (terminal)
6161
┃ │ k: #halt ~> CONTINUATION:K
6262
┃ │ pc: 248
6363
┃ │ callDepth: 0
6464
┃ │ statusCode: EVMC_SUCCESS
6565
┃ │
6666
┃ ┊ constraint: true
6767
┃ ┊ subst: OMITTED SUBST
68-
┃ └─ 8 (leaf, target, terminal)
68+
┃ └─ 6 (leaf, target, terminal)
6969
┃ k: #halt ~> CONTINUATION:K
7070
┃ pc: PC_CELL_5d410f2a:Int
7171
┃ callDepth: CALLDEPTH_CELL_5d410f2a:Int
@@ -76,14 +76,14 @@
7676
┃ ( VV0_x_114b9705:Int +Int VV1_y_114b9705:Int ) <=Int ( maxUInt256 -Int VV1_y_114b9705:Int )
7777
┃ ( ( VV0_x_114b9705:Int +Int VV1_y_114b9705:Int ) +Int VV1_y_114b9705:Int ) <=Int VV0_x_114b9705:Int
7878
79-
├─ 31
79+
├─ 25
8080
│ k: #execute ~> #return 128 32 ~> #pc [ STATICCALL ] ~> #execute ~> CONTINUATION:K
8181
│ pc: 0
8282
│ callDepth: 1
8383
│ statusCode: STATUSCODE:StatusCode
8484
8585
│ (745 steps)
86-
└─ 25 (leaf, terminal)
86+
└─ 19 (leaf, terminal)
8787
k: #halt ~> CONTINUATION:K
8888
pc: 3736
8989
callDepth: 0
@@ -95,7 +95,7 @@
9595
module SUMMARY-TEST%ARITHMETICCALLTEST.TEST-DOUBLE-ADD(UINT256,UINT256):0
9696

9797

98-
rule [BASIC-BLOCK-13-TO-15]: <foundry>
98+
rule [BASIC-BLOCK-9-TO-11]: <foundry>
9999
<kevm>
100100
<k>
101101
( #execute
@@ -451,9 +451,9 @@ module SUMMARY-TEST%ARITHMETICCALLTEST.TEST-DOUBLE-ADD(UINT256,UINT256):0
451451
andBool ( ( notBool #range ( 0 < CALLER_ID:Int <= 9 ) )
452452
andBool ( ( notBool #range ( 0 < ORIGIN_ID:Int <= 9 ) )
453453
)))))))))))))))))
454-
[priority(20), label(BASIC-BLOCK-13-TO-15)]
454+
[priority(20), label(BASIC-BLOCK-9-TO-11)]
455455

456-
rule [BASIC-BLOCK-1-TO-11]: <foundry>
456+
rule [BASIC-BLOCK-1-TO-7]: <foundry>
457457
<kevm>
458458
<k>
459459
#execute
@@ -824,9 +824,9 @@ module SUMMARY-TEST%ARITHMETICCALLTEST.TEST-DOUBLE-ADD(UINT256,UINT256):0
824824
andBool ( ?VV0_x_114b9705 <Int pow256
825825
andBool ( ?VV1_y_114b9705 <Int pow256
826826
))))
827-
[priority(20), label(BASIC-BLOCK-1-TO-11)]
827+
[priority(20), label(BASIC-BLOCK-1-TO-7)]
828828

829-
rule [BASIC-BLOCK-27-TO-21]: <foundry>
829+
rule [BASIC-BLOCK-21-TO-15]: <foundry>
830830
<kevm>
831831
<k>
832832
( #execute
@@ -1184,9 +1184,9 @@ module SUMMARY-TEST%ARITHMETICCALLTEST.TEST-DOUBLE-ADD(UINT256,UINT256):0
11841184
andBool ( ( maxUInt256 -Int VV1_y_114b9705:Int ) <Int ( VV0_x_114b9705:Int +Int VV1_y_114b9705:Int )
11851185
))))))))))))))))))
11861186
ensures ( VV0_x_114b9705:Int +Int VV1_y_114b9705:Int ) <Int pow256
1187-
[priority(20), label(BASIC-BLOCK-27-TO-21)]
1187+
[priority(20), label(BASIC-BLOCK-21-TO-15)]
11881188

1189-
rule [BASIC-BLOCK-30-TO-24]: <foundry>
1189+
rule [BASIC-BLOCK-24-TO-18]: <foundry>
11901190
<kevm>
11911191
<k>
11921192
( #execute
@@ -1545,9 +1545,9 @@ module SUMMARY-TEST%ARITHMETICCALLTEST.TEST-DOUBLE-ADD(UINT256,UINT256):0
15451545
andBool ( ( VV0_x_114b9705:Int +Int VV1_y_114b9705:Int ) <=Int ( maxUInt256 -Int VV1_y_114b9705:Int )
15461546
)))))))))))))))))))
15471547
ensures ( VV0_x_114b9705:Int +Int VV1_y_114b9705:Int ) <Int pow256
1548-
[priority(20), label(BASIC-BLOCK-30-TO-24)]
1548+
[priority(20), label(BASIC-BLOCK-24-TO-18)]
15491549

1550-
rule [BASIC-BLOCK-31-TO-25]: <foundry>
1550+
rule [BASIC-BLOCK-25-TO-19]: <foundry>
15511551
<kevm>
15521552
<k>
15531553
( #execute
@@ -1906,6 +1906,6 @@ module SUMMARY-TEST%ARITHMETICCALLTEST.TEST-DOUBLE-ADD(UINT256,UINT256):0
19061906
andBool ( ( VV0_x_114b9705:Int +Int VV1_y_114b9705:Int ) <=Int ( maxUInt256 -Int VV1_y_114b9705:Int )
19071907
)))))))))))))))))))
19081908
ensures ( VV0_x_114b9705:Int +Int VV1_y_114b9705:Int ) <Int pow256
1909-
[priority(20), label(BASIC-BLOCK-31-TO-25)]
1909+
[priority(20), label(BASIC-BLOCK-25-TO-19)]
19101910

19111911
endmodule

0 commit comments

Comments
 (0)