Skip to content

VSD Intervals #5354

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

Closed
wants to merge 37 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
18b9509
(INT) Interval operations
Jun 16, 2017
fa59ec0
(INT) Fix broken interval unit tests
hannes-steffenhagen-diffblue May 9, 2018
58c8a58
(INT) Remove unnecessary construction of dstring
hannes-steffenhagen-diffblue May 16, 2018
f1b673d
(INT) Rename interval is_constant to is_single_value_interval
hannes-steffenhagen-diffblue May 16, 2018
4adae76
(INT) Rename is_true and is_false in interval expressions
hannes-steffenhagen-diffblue May 16, 2018
66b6a40
(INT) Make eval take an identifier instead of an exprt
hannes-steffenhagen-diffblue May 16, 2018
8797aee
(INT) Make constructors take constant references instead of values
hannes-steffenhagen-diffblue May 16, 2018
da5dd0f
(INT) Apply clang-format
hannes-steffenhagen-diffblue May 16, 2018
e8deecc
(INT) Remove unnecessary constant specifier from value returning func…
hannes-steffenhagen-diffblue May 16, 2018
f8091c9
(INT) Use irep_idt in place of exprt when exprt isn't needed
hannes-steffenhagen-diffblue May 16, 2018
ffde1ee
(INT) Cleanup to_string and operator<< for intervals
hannes-steffenhagen-diffblue May 16, 2018
4012743
(INT) Give handle constants a better name
hannes-steffenhagen-diffblue May 16, 2018
25a34d9
(INT) Remove swap function in intervals
hannes-steffenhagen-diffblue May 16, 2018
b035c8b
(INT) Add additional unit tests for intervals
hannes-steffenhagen-diffblue May 21, 2018
d373df2
(INT) Various code style fixes in intervals code
hannes-steffenhagen-diffblue May 21, 2018
6e36c8c
(INT) Fix eval handling of ID_not case in intervals
NlightNFotis May 23, 2018
e850530
(INT) Fix bitwise operators for intervals
NlightNFotis May 23, 2018
e536404
(INT) Make eval in constant_interval_exprt const
danpoe May 29, 2018
1321ed2
(INT) Removed unimplemented function from util/interval.h
danpoe May 29, 2018
e3dbce7
(INT) accept false of ID_bool as valid zero value
danpoe May 29, 2018
eebfcbc
(INT) Add ID_bool type preconditions to logical interval operations
danpoe May 29, 2018
6fb8567
(INT) use tvt_to_interval instead of tv_to_interval in constant_inter…
danpoe May 29, 2018
f7152b5
(INT) Handle typecasts in constant_interval_exprt
danpoe May 29, 2018
0077a18
(INT) Typecast from ID_bool to integer types
Dec 8, 2019
8c5f9b6
(INT) Addressing review comments
Dec 8, 2019
f57a616
(INT) Add well-formedness checks for constant_interval_exprt
danpoe May 30, 2018
2bec215
(INT) Extend interval multiplication for extremes
Sep 13, 2018
7c050a2
(INT) Add support for bit field and enums intervals.cpp
Dec 8, 2019
7a5c6d3
(INT) Fix broken interval unit tests
hannes-steffenhagen-diffblue Jul 18, 2018
b685412
(INT) Fix bug with interval typecasts
hannes-steffenhagen-diffblue Jul 23, 2018
59ecd25
(INT) Assume relation between two int vars (issue #179)
Sep 10, 2018
85e776f
(INT) Fixup for nil_typet being removed
chrisr-diffblue Oct 11, 2019
8b548e1
(INT) Fixups post-rebase
Dec 8, 2019
c523606
clang-format changes to the interval code and unit tests
Dec 9, 2019
446020a
Fixes for the linter.
Dec 9, 2019
6ae65f4
Sort makefile includes
May 22, 2020
b41c4ec
Add missing unit test to the Makefile
May 22, 2020
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
8 changes: 4 additions & 4 deletions src/analyses/interval_domain.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -329,10 +329,10 @@ void interval_domaint::assume_rec(
{
integer_intervalt &lhs_i=int_map[lhs_identifier];
integer_intervalt &rhs_i=int_map[rhs_identifier];
lhs_i.meet(rhs_i);
rhs_i=lhs_i;
if(rhs_i.is_bottom())
make_bottom();
if(id == ID_lt && !lhs_i.is_less_than(rhs_i))
lhs_i.make_less_than(rhs_i);
if(id == ID_le && !lhs_i.is_less_than_eq(rhs_i))
lhs_i.make_less_than_eq(rhs_i);
}
else if(is_float(lhs.type()) && is_float(rhs.type()))
{
Expand Down
1 change: 1 addition & 0 deletions src/util/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,7 @@ SRC = allocate_objects.cpp \
version.cpp \
xml.cpp \
xml_irep.cpp \
interval.cpp \
# Empty last line

INCLUDES= -I ..
Expand Down
Loading