14 switch (instruction.kind()) {
15 case InstructionKind::kPeekInstruction:
16 case InstructionKind::kPokeInstruction:
17 case InstructionKind::kDeleteRangeInstruction:
18 case InstructionKind::kPushUninitializedInstruction:
19 case InstructionKind::kPushBuiltinPointerInstruction:
20 case InstructionKind::kUnsafeCastInstruction:
35 switch (instruction.kind()) {
37 case InstructionKind::k##T: \
38 if (GlobalContext::annotate_ir()) { \
39 EmitIRAnnotation(instruction.Cast<T>(), stack); \
41 return EmitInstruction(instruction.Cast<T>(), stack);
49 stack->Push(stack->Peek(instruction.slot));
53 Stack<std::string>* stack) {
54 stack->Poke(instruction.slot, stack->Top());
59 const DeleteRangeInstruction& instruction, Stack<std::string>* stack) {
60 stack->DeleteRange(instruction.range);
static bool IsEmptyInstruction(const Instruction &instruction)
void EmitInstruction(const Instruction &instruction, Stack< std::string > *stack)
virtual void EmitSourcePosition(SourcePosition pos, bool always_emit=false)=0
#define TORQUE_INSTRUCTION_LIST(V)