klee
BranchTypes.h
Go to the documentation of this file.
1//===-- BranchTypes.h -------------------------------------------*- C++ -*-===//
2//
3// The KLEE Symbolic Virtual Machine
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10#ifndef KLEE_BRANCHTYPES_H
11#define KLEE_BRANCHTYPES_H
12
13#include <cstdint>
14
16#define BRANCH_TYPES \
17 BTYPE(NONE, 0U) \
18 BTYPE(ConditionalBranch, 1U) \
19 BTYPE(IndirectBranch, 2U) \
20 BTYPE(Switch, 3U) \
21 BTYPE(Call, 4U) \
22 BTYPE(MemOp, 5U) \
23 BTYPE(ResolvePointer, 6U) \
24 BTYPE(Alloc, 7U) \
25 BTYPE(Realloc, 8U) \
26 BTYPE(Free, 9U) \
27 BTYPE(GetVal, 10U) \
28 MARK(END, 10U)
30
48enum class BranchType : std::uint8_t {
50#define BTYPE(N,I) N = (I),
51#define MARK(N,I) N = (I),
52 BRANCH_TYPES
53#undef BTYPE
54#undef MARK
56};
57
58#endif
BranchType
Reason an ExecutionState forked.
Definition: BranchTypes.h:48