Lines Matching full:instruction
28 // A Disassembler object is used to disassemble a block of code instruction by
29 // instruction. The default implementation of the NameConverter object can be
86 // Writes one disassembled instruction into 'buffer' (0-terminated).
87 // Returns the length of the disassembled machine instruction in bytes.
88 int InstructionDecode(byte_* instruction);
98 void PrintRs(Instruction* instr);
99 void PrintRt(Instruction* instr);
100 void PrintRd(Instruction* instr);
101 void PrintFs(Instruction* instr);
102 void PrintFt(Instruction* instr);
103 void PrintFd(Instruction* instr);
104 void PrintSa(Instruction* instr);
105 void PrintSd(Instruction* instr);
106 void PrintBc(Instruction* instr);
107 void PrintCc(Instruction* instr);
108 void PrintFunction(Instruction* instr);
109 void PrintSecondaryField(Instruction* instr);
110 void PrintUImm16(Instruction* instr);
111 void PrintSImm16(Instruction* instr);
112 void PrintXImm16(Instruction* instr);
113 void PrintImm26(Instruction* instr);
114 void PrintCode(Instruction* instr); // For break and trap instructions.
115 // Printing of instruction name.
116 void PrintInstructionName(Instruction* instr);
119 int FormatRegister(Instruction* instr, const char* option);
120 int FormatFPURegister(Instruction* instr, const char* option);
121 int FormatOption(Instruction* instr, const char* option);
122 void Format(Instruction* instr, const char* format);
123 void Unknown(Instruction* instr);
125 // Each of these functions decodes one particular instruction type.
126 void DecodeTypeRegister(Instruction* instr);
127 void DecodeTypeImmediate(Instruction* instr);
128 void DecodeTypeJump(Instruction* instr);
166 void Decoder::PrintRs(Instruction* instr) {
172 void Decoder::PrintRt(Instruction* instr) {
178 void Decoder::PrintRd(Instruction* instr) {
190 void Decoder::PrintFs(Instruction* instr) {
196 void Decoder::PrintFt(Instruction* instr) {
202 void Decoder::PrintFd(Instruction* instr) {
209 void Decoder::PrintSa(Instruction* instr) {
216 void Decoder::PrintSd(Instruction* instr) {
223 void Decoder::PrintBc(Instruction* instr) {
230 void Decoder::PrintCc(Instruction* instr) {
237 void Decoder::PrintUImm16(Instruction* instr) {
244 void Decoder::PrintSImm16(Instruction* instr) {
251 void Decoder::PrintXImm16(Instruction* instr) {
258 void Decoder::PrintImm26(Instruction* instr) {
265 void Decoder::PrintCode(Instruction* instr) {
267 return; // Not a break or trap instruction.
286 default: // Not a break or trap instruction.
292 // Printing of instruction name.
293 void Decoder::PrintInstructionName(Instruction* instr) {
299 int Decoder::FormatRegister(Instruction* instr, const char* format) {
321 int Decoder::FormatFPURegister(Instruction* instr, const char* format) {
346 int Decoder::FormatOption(Instruction* instr, const char* format) {
409 // Format takes a formatting string for a whole instruction and prints it into
412 void Decoder::Format(Instruction* instr, const char* format) {
427 // which will just print "unknown" of the instruction bits.
428 void Decoder::Unknown(Instruction* instr) {
433 void Decoder::DecodeTypeRegister(Instruction* instr) {
769 void Decoder::DecodeTypeImmediate(Instruction* instr) {
897 void Decoder::DecodeTypeJump(Instruction* instr) {
911 // Disassemble the instruction at *instr_ptr into the output buffer.
913 Instruction* instr = Instruction::At(instr_ptr);
914 // Print raw instruction bytes.
919 case Instruction::kRegisterType: {
923 case Instruction::kImmediateType: {
927 case Instruction::kJumpType: {
935 return Instruction::kInstrSize;
993 byte_* instruction) {
995 return d.InstructionDecode(instruction);
1000 int Disassembler::ConstantPoolSizeAt(byte_* instruction) {