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

Introducing GDB tests on CI #859

Draft
wants to merge 3 commits into
base: develop
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
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
4 changes: 4 additions & 0 deletions test/debugger/commands/simple.gdb
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
k start
k step
k step 99
k step
1 change: 1 addition & 0 deletions test/debugger/inputs/simple.in
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
LblinitGeneratedTopCell{}(Lbl'Unds'Map'Unds'{}(Lbl'Stop'Map{}(),Lbl'UndsPipe'-'-GT-Unds'{}(inj{SortKConfigVar{}, SortKItem{}}(\dv{SortKConfigVar{}}("$PGM")),inj{SortInt{}, SortKItem{}}(\dv{SortInt{}}("0")))))
6 changes: 6 additions & 0 deletions test/debugger/k-files/simple.k
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
module SIMPLE
imports INT

rule I => I +Int 1
requires I <Int 100
endmodule
17 changes: 17 additions & 0 deletions test/debugger/outputs/simple.debugger.out.diff
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
Temporary breakpoint 1 at 0x6f0e0
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

Temporary breakpoint 1, 0x00005555555c30e0 in main ()
0x00005555555b55a0 in k_step (subject=<optimized out>) at /home/robertorosmaninho/rv/llvm-backend/test/debugger/k-files/simple.k:4
4 rule I => I +Int 1

Temporary breakpoint -9, 0x00005555555b55a0 in k_step (subject=<optimized out>) at /home/robertorosmaninho/rv/llvm-backend/test/debugger/k-files/simple.k:4
4 rule I => I +Int 1

Temporary breakpoint -10, 0x00005555555b55a0 in k_step (subject=<optimized out>) at /home/robertorosmaninho/rv/llvm-backend/test/debugger/k-files/simple.k:4
4 rule I => I +Int 1
[Inferior 1 (process 265761) exited normally]


The K framework enables Semantics-based program execution, like executing Solidity code using the formal semantics of Solidity or even EVM. Thus, it's correct by construction and offers the highest level of correctness. In this talk, we'll disprove the myth and show that semantics-based program execution is also efficient and capable of easily generating proof hints from concrete execution to empower Proof of Proof (PoP) for universal formal and mathematical verification.
Loading
Loading