Skip to content

Merge lazy init by Jakub Novák #22

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

Merged
merged 709 commits into from
Apr 2, 2025
Merged

Merge lazy init by Jakub Novák #22

merged 709 commits into from
Apr 2, 2025

Conversation

martinjonas
Copy link

This pull request adds lazy init functionality by Jakub Novák.

It also rebases JetKlee to the upstream version of Klee (at the time of the creation of the branch).

msimacek and others added 30 commits May 15, 2022 17:08
ASan report:

include/klee/util/BitArray.h:44:74: runtime error: null pointer passed as argument 1, which is declared to never be null

Signed-off-by: Marek Chalupa <xchalup4@fi.muni.cz>
ASan report:
include/klee/util/BitArray.h:32:54: runtime error: null pointer passed as argument 2, which is declared to never be null

Signed-off-by: Marek Chalupa <xchalup4@fi.muni.cz>
lib/Core/Executor.cpp:4077:3: runtime error: load of value 30, which is not a valid value for type 'bool'

Fixes: 95fe47d
…pdates()

Fixes:
/usr/include/c++/12.1.0/bits/stl_vector.h:1124:34: runtime error: reference binding to null pointer of type 'struct value_type'
0 0x55f1e36d289b in std::vector<klee::ref<klee::ConstantExpr>, std::allocator<klee::ref<klee::ConstantExpr> > >::operator[](unsigned long) /usr/include/c++/12.1.0/bits/stl_vector.h:1124
1 0x55f1e36c1725 in klee::ObjectStatePlane::getUpdates() const lib/Core/Memory.cpp:161
Marek Trtik and others added 29 commits November 20, 2022 19:12
JetKlee Lazy Init rebased for llvm 14
…KleeLazyInitMerge

# Conflicts:
#	lib/Core/Executor.cpp
Prefix all of them with 'memory error:'.
We over-approximate, but the models should be good enough for most
purposes.
It has side-effects that we do not support yet.
It is not passing for now
Functions are not sized types, therefore llvm crashed on this call.
Previously, two separate data structures were used for the same thing. This fixes the issue and also fixes multiple writes into the same offset in an array
if parent was local, be local. If it was global, also be global
lazy objects inherit scope of parent
@martinjonas martinjonas merged commit ef99913 into master Apr 2, 2025
0 of 21 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants