Move SymEval to production name of DataflowAPI.
[dyninst.git] / dataflowAPI / src / SymbolicExpansion.C
1
2 #include "SymbolicExpansion.h"
3 #include "SymEvalPolicy.h"
4
5 #include "../rose/SgAsmInstruction.h"
6 #include "../rose/SgAsmPowerpcInstruction.h"
7 #include "../rose/SgAsmx86Instruction.h"
8
9 #include "../rose/x86InstructionSemantics.h"
10 #include "../rose/powerpcInstructionSemantics.h"
11
12
13 using namespace Dyninst;
14 using namespace DataflowAPI;
15
16 bool SymbolicExpansion::expandX86(SgAsmInstruction *rose_insn,
17                                   SymEvalPolicy &policy) {
18   SgAsmx86Instruction *insn = static_cast<SgAsmx86Instruction *>(rose_insn);
19   
20   X86InstructionSemantics<SymEvalPolicy, Handle> t(policy);
21   t.processInstruction(insn);
22   return true;
23 }
24
25 bool SymbolicExpansion::expandPPC(SgAsmInstruction *rose_insn,
26                                   SymEvalPolicy &policy) {
27   SgAsmPowerpcInstruction *insn = static_cast<SgAsmPowerpcInstruction *>(rose_insn);
28   
29   PowerpcInstructionSemantics<SymEvalPolicy, Handle> t(policy);
30   t.processInstruction(insn);
31   return true;
32 }
33