Lines Matching full:interpreter
10 // This file contains the actual instruction interpreter.
14 #define DEBUG_TYPE "interpreter"
15 #include "Interpreter.h"
33 static cl::opt<bool> PrintVolatile("interpreter-print-volatile", cl::Hidden,
34 cl::desc("make the interpreter print every volatile load and store"));
257 void Interpreter::visitICmpInst(ICmpInst &I) {
445 void Interpreter::visitFCmpInst(FCmpInst &I) {
521 void Interpreter::visitBinaryOperator(BinaryOperator &I) {
557 void Interpreter::visitSelectInst(SelectInst &I) {
571 void Interpreter::exitCalled(GenericValue GV) {
588 void Interpreter::popStackAndReturnValueToCaller(Type *RetTy,
614 void Interpreter::visitReturnInst(ReturnInst &I) {
628 void Interpreter::visitUnreachableInst(UnreachableInst &I) {
632 void Interpreter::visitBranchInst(BranchInst &I) {
645 void Interpreter::visitSwitchInst(SwitchInst &I) {
693 void Interpreter::visitIndirectBrInst(IndirectBrInst &I) {
710 void Interpreter::SwitchToNewBasicBlock(BasicBlock *Dest, ExecutionContext &SF){
742 void Interpreter::visitAllocaInst(AllocaInst &I) {
773 GenericValue Interpreter::executeGEPOperation(Value *Ptr, gep_type_iterator I,
813 void Interpreter::visitGetElementPtrInst(GetElementPtrInst &I) {
819 void Interpreter::visitLoadInst(LoadInst &I) {
830 void Interpreter::visitStoreInst(StoreInst &I) {
844 void Interpreter::visitCallSite(CallSite CS) {
860 case Intrinsic::vaend: // va_end is a noop for the interpreter
905 void Interpreter::visitShl(BinaryOperator &I) {
918 void Interpreter::visitLShr(BinaryOperator &I) {
931 void Interpreter::visitAShr(BinaryOperator &I) {
944 GenericValue Interpreter::executeTruncInst(Value *SrcVal, Type *DstTy,
953 GenericValue Interpreter::executeSExtInst(Value *SrcVal, Type *DstTy,
962 GenericValue Interpreter::executeZExtInst(Value *SrcVal, Type *DstTy,
971 GenericValue Interpreter::executeFPTruncInst(Value *SrcVal, Type *DstTy,
980 GenericValue Interpreter::executeFPExtInst(Value *SrcVal, Type *DstTy,
989 GenericValue Interpreter::executeFPToUIInst(Value *SrcVal, Type *DstTy,
1003 GenericValue Interpreter::executeFPToSIInst(Value *SrcVal, Type *DstTy,
1017 GenericValue Interpreter::executeUIToFPInst(Value *SrcVal, Type *DstTy,
1029 GenericValue Interpreter::executeSIToFPInst(Value *SrcVal, Type *DstTy,
1042 GenericValue Interpreter::executePtrToIntInst(Value *SrcVal, Type *DstTy,
1052 GenericValue Interpreter::executeIntToPtrInst(Value *SrcVal, Type *DstTy,
1065 GenericValue Interpreter::executeBitCastInst(Value *SrcVal, Type *DstTy,
1098 void Interpreter::visitTruncInst(TruncInst &I) {
1103 void Interpreter::visitSExtInst(SExtInst &I) {
1108 void Interpreter::visitZExtInst(ZExtInst &I) {
1113 void Interpreter::visitFPTruncInst(FPTruncInst &I) {
1118 void Interpreter::visitFPExtInst(FPExtInst &I) {
1123 void Interpreter::visitUIToFPInst(UIToFPInst &I) {
1128 void Interpreter::visitSIToFPInst(SIToFPInst &I) {
1133 void Interpreter::visitFPToUIInst(FPToUIInst &I) {
1138 void Interpreter::visitFPToSIInst(FPToSIInst &I) {
1143 void Interpreter::visitPtrToIntInst(PtrToIntInst &I) {
1148 void Interpreter::visitIntToPtrInst(IntToPtrInst &I) {
1153 void Interpreter::visitBitCastInst(BitCastInst &I) {
1161 void Interpreter::visitVAArgInst(VAArgInst &I) {
1190 GenericValue Interpreter::getConstantExprValue (ConstantExpr *CE,
1272 GenericValue Interpreter::getOperandValue(Value *V, ExecutionContext &SF) {
1291 void Interpreter::callFunction(Function *F,
1329 void Interpreter::run() {