about summary refs log tree commit diff homepage
path: root/include
diff options
context:
space:
mode:
authorFrank Busse <bb0xfb@gmail.com>2022-01-07 18:58:13 +0000
committerCristian Cadar <c.cadar@imperial.ac.uk>2023-03-23 17:41:08 +0000
commit4749068700db333a47b034f047eed154de4ad2c8 (patch)
tree7b9505cb382c47760c6bee8c00c0573b069cf473 /include
parentba58e4add3bb2e924b0078146fdcd9b4f6158178 (diff)
downloadklee-4749068700db333a47b034f047eed154de4ad2c8.tar.gz
stats: add branch type stats
Diffstat (limited to 'include')
-rw-r--r--include/klee/Core/BranchTypes.h33
1 files changed, 20 insertions, 13 deletions
diff --git a/include/klee/Core/BranchTypes.h b/include/klee/Core/BranchTypes.h
index 5c3e5f32..e8b48cd8 100644
--- a/include/klee/Core/BranchTypes.h
+++ b/include/klee/Core/BranchTypes.h
@@ -14,9 +14,9 @@
 
 /// \cond DO_NOT_DOCUMENT
 #define BRANCH_TYPES                                                           \
-  BTYPE(NONE, 0U)                                                              \
-  BTYPE(ConditionalBranch, 1U)                                                 \
-  BTYPE(IndirectBranch, 2U)                                                    \
+  BTYPEDEFAULT(NONE, 0U)                                                       \
+  BTYPE(Conditional, 1U)                                                       \
+  BTYPE(Indirect, 2U)                                                          \
   BTYPE(Switch, 3U)                                                            \
   BTYPE(Call, 4U)                                                              \
   BTYPE(MemOp, 5U)                                                             \
@@ -25,7 +25,7 @@
   BTYPE(Realloc, 8U)                                                           \
   BTYPE(Free, 9U)                                                              \
   BTYPE(GetVal, 10U)                                                           \
-  MARK(END, 10U)
+  BMARK(END, 10U)
 /// \endcond
 
 /** @enum BranchType
@@ -34,8 +34,8 @@
  *  | Value                           | Description                                                                                        |
  *  |---------------------------------|----------------------------------------------------------------------------------------------------|
  *  | `BranchType::NONE`              | default value (no branch)                                                                          |
- *  | `BranchType::ConditionalBranch` | branch caused by `br` instruction with symbolic condition                                          |
- *  | `BranchType::IndirectBranch`    | branch caused by `indirectbr` instruction with symbolic address                                    |
+ *  | `BranchType::Conditional`       | branch caused by `br` instruction with symbolic condition                                          |
+ *  | `BranchType::Indirect`          | branch caused by `indirectbr` instruction with symbolic address                                    |
  *  | `BranchType::Switch`            | branch caused by `switch` instruction with symbolic value                                          |
  *  | `BranchType::Call`              | branch caused by `call` with symbolic function pointer                                             |
  *  | `BranchType::MemOp`             | branch caused by memory operation with symbolic address (e.g. multiple resolutions, out-of-bounds) |
@@ -46,13 +46,20 @@
  *  | `BranchType::GetVal`            | branch caused by user-invoked concretization while seeding                                         |
  */
 enum class BranchType : std::uint8_t {
-/// \cond DO_NOT_DOCUMENT
-#define BTYPE(N,I) N = (I),
-#define MARK(N,I) N = (I),
+  /// \cond DO_NOT_DOCUMENT
+  #define BTYPEDEFAULT(N,I) N = (I),
+  #define BTYPE(N,I) N = (I),
+  #define BMARK(N,I) N = (I),
   BRANCH_TYPES
-#undef BTYPE
-#undef MARK
-/// \endcond
+  /// \endcond
 };
 
-#endif
\ No newline at end of file
+
+#undef BTYPEDEFAULT
+#undef BTYPE
+#undef BMARK
+#define BTYPEDEFAULT(N,I)
+#define BTYPE(N,I)
+#define BMARK(N,I)
+
+#endif