Lines Matching defs:Instruction
404 class Instruction : public ZoneObject {
438 static Instruction* New(Zone* zone, InstructionCode opcode) {
442 static Instruction* New(Zone* zone, InstructionCode opcode,
452 int size = static_cast<int>(RoundUp(sizeof(Instruction), kPointerSize) +
455 return new (zone->New(size)) Instruction(
461 Instruction* MarkAsControl() {
465 Instruction* MarkAsCall() {
500 explicit Instruction(InstructionCode opcode)
507 Instruction(InstructionCode opcode, size_t output_count,
541 OStream& operator<<(OStream& os, const Instruction& instr);
544 // TODO(titzer): squash GapInstruction back into Instruction, since essentially
546 class GapInstruction : public Instruction {
573 static GapInstruction* cast(Instruction* instr) {
578 static const GapInstruction* cast(const Instruction* instr) {
584 explicit GapInstruction(InstructionCode opcode) : Instruction(opcode) {
592 friend OStream& operator<<(OStream& os, const Instruction& instr);
610 static BlockStartInstruction* cast(Instruction* instr) {
624 class SourcePositionInstruction FINAL : public Instruction {
633 static SourcePositionInstruction* cast(Instruction* instr) {
638 static const SourcePositionInstruction* cast(const Instruction* instr) {
645 : Instruction(kSourcePositionInstruction),
791 typedef ZoneDeque<Instruction*> InstructionDeque;
857 Instruction* InstructionAt(int index) const {
872 int AddInstruction(Instruction* instr, BasicBlock* block);