ClearBlue
include
IR
SEG
SEGBinaryWithIntConstNode.h
1
/*
2
* SEGBinaryWithIntNode.h
3
*
4
* Qingkai
5
*
6
* This node is to model a binary opcode, whose children are
7
* a seg operand node and a constant integer.
8
*/
9
10
#ifndef IR_SEG_SEGBINARYWITHINTCONSTNODE_H
11
#define IR_SEG_SEGBINARYWITHINTCONSTNODE_H
12
13
#include <llvm/IR/BasicBlock.h>
14
15
#include "IR/SEG/SymbolicExprGraph.h"
16
17
using namespace
llvm;
18
19
class
SEGBinaryWithIntConstNode
:
public
SEGOpcodeNode
{
20
private
:
21
uint64_t IntConst;
22
23
SEGBinaryWithIntConstNode
(
CodeKind
Opcode, Type *Ty,
SymbolicExprGraph
*SEG,
24
BasicBlock *BB, uint64_t Const,
bool
fromDisk);
25
26
friend
class
SymbolicExprGraph
;
27
28
public
:
29
virtual
~
SEGBinaryWithIntConstNode
();
30
31
virtual
void
dot
(raw_fd_ostream &O)
const
;
32
33
uint64_t getIntConstant()
const
;
34
35
public
:
36
static
bool
classof(
const
SEGObject
*N) {
37
return
N->getKind() == SEGOBJK_BinaryWithIntConst;
38
}
39
};
40
41
#endif
SymbolicExprGraph::dot
void dot(const char *FileName) const
Dot this graph to a file with filename.
Definition:
SymbolicExprGraph.cpp:881
SEGOpcodeNode::CodeKind
CodeKind
Definition:
SymbolicExprGraph.h:522
SymbolicExprGraph
Definition:
SymbolicExprGraph.h:708
SEGObject
Definition:
SymbolicExprGraph.h:76
SEGOpcodeNode
Definition:
SymbolicExprGraph.h:519
SEGBinaryWithIntConstNode
Definition:
SEGBinaryWithIntConstNode.h:19
Generated by
1.8.17