Skip to content

Commit 1cbabe5

Browse files
committed
move cfg-related structures to cfg/ folder
cfg/cfg.hpp is now MIT; it has very little resemblance to Crab's version, if at all. Signed-off-by: Elazar Gershuni <[email protected]>
1 parent 8e7eb4a commit 1cbabe5

30 files changed

+43
-53
lines changed

CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,7 @@ link_directories(${Boost_LIBRARY_DIRS})
9797

9898
file(GLOB LIB_SRC
9999
"./src/*.cpp"
100+
"./src/cfg/*.cpp"
100101
"./src/crab/*.cpp"
101102
"./src/crab_utils/*.cpp"
102103
"./src/linux/gpl/spec_prototypes.cpp"

src/asm_cfg.cpp

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,10 @@
77
#include <string>
88
#include <vector>
99

10-
#include "config.hpp"
11-
#include "crab/cfg.hpp"
12-
#include "crab/wto.hpp"
13-
1410
#include "asm_syntax.hpp"
11+
#include "cfg/cfg.hpp"
12+
#include "cfg/wto.hpp"
13+
#include "config.hpp"
1514
#include "program.hpp"
1615

1716
using std::optional;

src/asm_files.hpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
#include <string>
77
#include <vector>
88

9-
#include "asm_syntax.hpp"
109
#include "platform.hpp"
1110

1211
class UnmarshalError final : public std::runtime_error {

src/asm_ostream.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
#include <vector>
88

99
#include "asm_syntax.hpp"
10-
#include "crab/cfg.hpp"
10+
#include "cfg/cfg.hpp"
1111
#include "crab/fwd_analyzer.hpp"
1212
#include "crab/interval.hpp"
1313
#include "crab/type_encoding.hpp"

src/asm_syntax.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
#include <variant>
1111
#include <vector>
1212

13-
#include "crab/label.hpp"
13+
#include "cfg/label.hpp"
1414
#include "crab/type_encoding.hpp"
1515
#include "crab_utils/num_safety.hpp"
1616
#include "spec_type_descriptors.hpp"

src/assertions.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
#include <vector>
77

88
#include "asm_syntax.hpp"
9-
#include "crab/cfg.hpp"
9+
#include "cfg/cfg.hpp"
1010
#include "platform.hpp"
1111

1212
using prevail::TypeGroup;

src/crab/cfg.hpp renamed to src/cfg/cfg.hpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// Copyright (c) Prevail Verifier contributors.
2-
// SPDX-License-Identifier: Apache-2.0
2+
// SPDX-License-Identifier: MIT
33
#pragma once
44

55
/*
@@ -10,11 +10,9 @@
1010
#include <memory>
1111
#include <ranges>
1212
#include <set>
13-
#include <variant>
1413
#include <vector>
1514

16-
#include "config.hpp"
17-
#include "crab/label.hpp"
15+
#include "cfg/label.hpp"
1816
#include "crab_utils/debug.hpp"
1917
struct cfg_builder_t;
2018
namespace prevail {

src/crab/label.hpp renamed to src/cfg/label.hpp

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,8 @@
77
#include <climits>
88
#include <functional>
99
#include <limits>
10-
#include <ostream>
1110
#include <string>
1211
#include <utility>
13-
#include <vector>
1412

1513
#include "crab_utils/num_safety.hpp"
1614

src/crab/wto.cpp renamed to src/cfg/wto.cpp

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,12 @@
11
// Copyright (c) Prevail Verifier contributors.
22
// SPDX-License-Identifier: MIT
3+
#include <map>
34
#include <ranges>
5+
#include <variant>
46

5-
#include "wto.hpp"
7+
#include "cfg/cfg.hpp"
8+
#include "cfg/label.hpp"
9+
#include "cfg/wto.hpp"
610

711
// This file contains an iterative implementation of the recursive algorithm in
812
// Bourdoncle, "Efficient chaotic iteration strategies with widenings", 1993

src/crab/wto.hpp renamed to src/cfg/wto.hpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,11 @@
2626
#include <optional>
2727
#include <stack>
2828
#include <utility>
29+
#include <variant>
2930
#include <vector>
3031

31-
#include "crab/cfg.hpp"
32-
#include "crab/label.hpp"
32+
#include "cfg/cfg.hpp"
33+
#include "cfg/label.hpp"
3334

3435
namespace prevail {
3536

src/crab/bitset_domain.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
// Copyright (c) Prevail Verifier contributors.
22
// SPDX-License-Identifier: MIT
3-
#include "bitset_domain.hpp"
43
#include <ostream>
54

5+
#include "bitset_domain.hpp"
6+
67
std::ostream& operator<<(std::ostream& o, const bitset_domain_t& b) {
78
o << "Numbers -> {";
89
bool first = true;

src/crab/dsl_syntax.hpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
// SPDX-License-Identifier: MIT
33
#pragma once
44

5-
#include "crab/cfg.hpp"
65
#include "crab/linear_constraint.hpp"
76

87
namespace prevail::dsl_syntax {

src/crab/ebpf_checker.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
#include "asm_unmarshal.hpp"
1212
#include "config.hpp"
1313
#include "crab/array_domain.hpp"
14+
#include "crab/dsl_syntax.hpp"
1415
#include "crab/ebpf_domain.hpp"
15-
#include "dsl_syntax.hpp"
1616
#include "platform.hpp"
1717
#include "program.hpp"
1818
#include "string_constraints.hpp"

src/crab/ebpf_domain.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@
1212
#include "asm_unmarshal.hpp"
1313
#include "config.hpp"
1414
#include "crab/array_domain.hpp"
15+
#include "crab/dsl_syntax.hpp"
1516
#include "crab/ebpf_domain.hpp"
16-
#include "dsl_syntax.hpp"
1717
#include "string_constraints.hpp"
1818

1919
using prevail::NumAbsDomain;

src/crab/ebpf_transformer.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@
1313
#include "asm_unmarshal.hpp"
1414
#include "config.hpp"
1515
#include "crab/array_domain.hpp"
16+
#include "crab/dsl_syntax.hpp"
1617
#include "crab/ebpf_domain.hpp"
1718
#include "crab_utils/num_safety.hpp"
18-
#include "dsl_syntax.hpp"
1919
#include "platform.hpp"
2020
#include "string_constraints.hpp"
2121

src/crab/fwd_analyzer.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,11 @@
33
#include <utility>
44
#include <variant>
55

6+
#include "cfg/cfg.hpp"
7+
#include "cfg/wto.hpp"
68
#include "config.hpp"
7-
#include "crab/cfg.hpp"
89
#include "crab/ebpf_domain.hpp"
910
#include "crab/fwd_analyzer.hpp"
10-
#include "crab/wto.hpp"
1111
#include "program.hpp"
1212

1313
namespace prevail {

src/crab/split_dbm.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
#include <optional>
2323
#include <unordered_set>
2424
#include <utility>
25+
#include <variant>
2526

2627
#include <boost/container/flat_map.hpp>
2728

src/crab/thresholds.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
// Copyright (c) Prevail Verifier contributors.
22
// SPDX-License-Identifier: Apache-2.0
33
#include "crab/thresholds.hpp"
4-
#include "crab/cfg.hpp"
5-
#include "crab/label.hpp"
4+
#include "cfg/cfg.hpp"
5+
#include "cfg/label.hpp"
66

77
namespace prevail {
88

src/crab/thresholds.hpp

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,9 @@
55
#include <climits>
66
#include <map>
77

8-
#include <boost/range/iterator_range.hpp>
9-
10-
#include "crab/cfg.hpp"
8+
#include "cfg/cfg.hpp"
9+
#include "cfg/wto.hpp"
1110
#include "crab/interval.hpp"
12-
#include "crab/linear_constraint.hpp"
13-
#include "crab/wto.hpp"
1411
#include "crab_utils/debug.hpp"
1512

1613
namespace prevail {

src/crab/type_domain.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
#include "crab/type_encoding.hpp"
1414
#include "crab/variable.hpp"
1515
#include "crab_utils/debug.hpp"
16-
#include "dsl_syntax.hpp"
16+
#include "crab/dsl_syntax.hpp"
1717

1818
namespace prevail {
1919

src/crab/type_domain.hpp

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,11 @@
77
#include <functional>
88
#include <optional>
99

10+
#include "asm_syntax.hpp" // for Reg
1011
#include "crab/array_domain.hpp"
11-
#include "crab/split_dbm.hpp"
1212
#include "crab/type_encoding.hpp"
1313
#include "crab/variable.hpp"
1414

15-
#include "asm_syntax.hpp" // for Reg
16-
1715
namespace prevail {
1816

1917
struct reg_pack_t {

src/crab/var_factory.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* Factories for variable names.
55
*/
66

7-
#include "crab/label.hpp"
7+
#include "cfg/label.hpp"
88
#include "crab/variable.hpp"
99
#include "crab_utils/lazy_allocator.hpp"
1010

src/crab_utils/debug.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// Copyright (c) Prevail Verifier contributors.
22
// SPDX-License-Identifier: Apache-2.0
3-
#include "debug.hpp"
3+
#include "crab_utils/debug.hpp"
44

55
namespace prevail {
66
bool CrabLogFlag = false;

src/crab_utils/num_big.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99

1010
#include <boost/multiprecision/cpp_int.hpp>
1111

12+
#include "crab_utils/debug.hpp"
1213
#include "crab_utils/num_safety.hpp"
13-
#include "debug.hpp"
1414

1515
using boost::multiprecision::cpp_int;
1616

src/linux/gpl/spec_type_descriptors.hpp

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,4 @@
11
#pragma once
2-
#include <cassert>
3-
#include <string>
4-
#include <unordered_map>
5-
#include <vector>
6-
7-
#include "ebpf_vm_isa.hpp"
82

93
constexpr int NMAPS = 64;
104
constexpr int NONMAPS = 5;

src/main/linux_verifier.hpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
#pragma once
44

55
#include "platform.hpp"
6-
#include <iostream>
76

87
#if __linux__
98

src/platform.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
// can use to call platform-specific functions.
88

99
#include "../external/bpf_conformance/include/bpf_conformance.h"
10+
1011
#include "config.hpp"
1112
#include "helpers.hpp"
1213
#include "spec_type_descriptors.hpp"

src/program.hpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,11 @@
55
#include <map>
66
#include <vector>
77

8-
#include "crab/cfg.hpp"
9-
#include "crab/label.hpp"
10-
#include "crab_utils/debug.hpp"
11-
128
#include "asm_syntax.hpp"
9+
#include "cfg/cfg.hpp"
10+
#include "cfg/label.hpp"
11+
#include "config.hpp"
12+
#include "crab_utils/debug.hpp"
1313

1414
class Program {
1515
friend struct cfg_builder_t;

src/spec_type_descriptors.hpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22
// SPDX-License-Identifier: MIT
33
#pragma once
44

5-
#include "ebpf_base.h"
6-
#include "ebpf_vm_isa.hpp"
75
#include <map>
86
#include <string>
97
#include <vector>
108

119
#include "crab_utils/lazy_allocator.hpp"
10+
#include "ebpf_base.h"
11+
#include "ebpf_vm_isa.hpp"
1212

1313
enum class EbpfMapValueType { ANY, MAP, PROGRAM };
1414

src/test/test_wto.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
// SPDX-License-Identifier: MIT
33
#include <catch2/catch_all.hpp>
44

5-
#include "crab/cfg.hpp"
6-
#include "crab/wto.hpp"
5+
#include "cfg/cfg.hpp"
6+
#include "cfg/wto.hpp"
77

88
using prevail::label_t;
99
using prevail::wto_t;

0 commit comments

Comments
 (0)