Home | History | Annotate | Download | only in runtime

Lines Matching refs:opcode

183   std::string opcode;
191 opcode = "bkpt";
198 opcode = (((instruction >> 5) & 1) ? "blx" : "bx");
205 opcode = kDataProcessingOperations[op];
228 opcode = StringPrintf("%s%s", (l ? "ldr" : "str"), (b ? "b" : ""));
258 opcode = StringPrintf("%s%c%c", (l ? "ldm" : "stm"), (u ? 'i' : 'd'), (p ? 'b' : 'a'));
265 opcode = (bl ? "bl" : "b");
272 opcode = "???";
275 opcode += kConditionCodeNames[cond];
276 opcode += suffixes;
278 os << StringPrintf("%p: %08x\t%-7s ", instr_ptr, instruction, opcode.c_str()) << args.str() << '\n';
296 std::ostringstream opcode;
322 opcode << "stm";
326 opcode << "ldm";
329 opcode << "pop";
335 opcode << "stmdb";
338 opcode << "push";
341 opcode << "ldmdb";
356 opcode << "strex";
359 opcode << "ldrex";
383 opcode << "and";
386 opcode << "UNKNOWN TST-" << S;
389 opcode << "tst";
393 case 0x1: opcode << "bic"; break;
396 opcode << "orr";
399 opcode << "mov";
404 opcode << "orn";
406 opcode << "mvn";
411 opcode << "eor";
414 opcode << "UNKNOWN TEQ-" << S;
417 opcode << "teq";
421 case 0x6: opcode << "pkh"; break;
424 opcode << "add";
427 opcode << "UNKNOWN CMN-" << S;
430 opcode << "cmn";
434 case 0xA: opcode << "adc"; break;
435 case 0xB: opcode << "sbc"; break;
438 opcode << "sub";
441 opcode << "UNKNOWN CMP-" << S;
444 opcode << "cmp";
448 case 0xE: opcode << "rsb"; break;
449 default: opcode << "UNKNOWN DPSR-" << op3; break;
453 opcode << "s";
455 opcode << ".w";
523 opcode << "vpop" << (S == 0 ? ".f64" : ".f32");
526 opcode << "vldr" << (S == 0 ? ".f64" : ".f32");
529 opcode << "vldm" << (S == 0 ? ".f64" : ".f32");
558 opcode << (opc3 == 1 ? "vneg" : "vsqrt") << (dp_operation ? ".f64" : ".f32");
567 opcode << (opc3 == 1 ? "vcmp" : "vcmpe") << (dp_operation ? ".f64" : ".f32");
589 opcode << "vsqrt" << (dp_operation ? ".f64" : ".f32");
620 opcode << "mov";
622 opcode << "s";
624 opcode << ".w";
626 opcode << "mvn";
628 opcode << "s";
635 opcode << "tst";
637 opcode << "teq";
639 opcode << "cmw";
641 opcode << "cmp.w";
646 case 0x0: opcode << "and"; break;
647 case 0x1: opcode << "bic"; break;
648 case 0x2: opcode << "orr"; break;
649 case 0x3: opcode << "orn"; break;
650 case 0x4: opcode << "eor"; break;
651 case 0x8: opcode << "add"; break;
652 case 0xA: opcode << "adc"; break;
653 case 0xB: opcode << "sbc"; break;
654 case 0xD: opcode << "sub"; break;
655 case 0xE: opcode << "rsb"; break;
656 default: opcode << "UNKNOWN DPMI-" << op3; break;
659 opcode << "s";
683 opcode << (op3 == 0 ? "addw" : "subw");
686 opcode << "adr";
700 opcode << (op3 == 0x04 ? "movw" : "movt");
714 opcode << "bfi";
717 opcode << "bfc";
756 opcode << "b";
757 DumpCond(opcode, cond);
758 opcode << ".w";
764 case 4: opcode << "dsb"; break;
765 case 5: opcode << "dmb"; break;
766 case 6: opcode << "isb"; break;
773 opcode << "udf";
796 opcode << "b";
799 DumpCond(opcode, cond);
808 opcode << ".w";
828 opcode << "bx";
830 opcode << "blx";
862 opcode << "strb";
889 opcode << "push";
892 opcode << "UNDEFINED";
895 opcode << "strt";
897 opcode << "str";
915 opcode << "str.w";
925 opcode << "str.w";
951 opcode << "ldrh.w";
964 opcode << "ldrsh.w";
996 opcode << "ldr.w";
1010 opcode << "ldr.w";
1019 opcode << "ldrt";
1029 // Apply any IT-block conditions to the opcode if necessary.
1031 opcode << it_conditions_.back();
1035 os << StringPrintf("%p: %08x\t%-7s ", instr_ptr, instr, opcode.str().c_str()) << args.str() << '\n';
1045 std::ostringstream opcode;
1061 opcode << "lsls";
1063 opcode << "lsrs";
1065 opcode << "asrs";
1079 opcode << "mov";
1082 opcode << "adds";
1084 opcode << "subs";
1107 case 4: opcode << "movs"; break;
1108 case 5: opcode << "cmp"; break;
1109 case 6: opcode << "adds"; break;
1110 case 7: opcode << "subs"; break;
1123 opcode << kThumbDataProcessingOperations[opcode2];
1136 opcode << "add";
1147 opcode << "mov";
1157 opcode << "cmp";
1165 opcode << ((opcode2 & 0x2) == 0 ? "bx" : "blx");
1175 opcode << "ldr";
1188 case 0: opcode << "str"; break;
1189 case 1: opcode << "strh"; break;
1190 case 2: opcode << "strb"; break;
1191 case 3: opcode << "ldrsb"; break;
1192 case 4: opcode << "ldr"; break;
1193 case 5: opcode << "ldrh"; break;
1194 case 6: opcode << "ldrb"; break;
1195 case 7: opcode << "ldrsh"; break;
1202 opcode << (opB == 0 ? "str" : "ldr");
1212 opcode << (opB == 0 ? "str" : "ldr");
1216 opcode << (opB == 0 ? "strb" : "ldrb");
1220 opcode << (opB == 0 ? "strh" : "ldrh");
1228 opcode << "b";
1229 DumpCond(opcode, cond);
1235 opcode << "add";
1245 opcode << ((opcode2 & 4) == 0 ? "add" : "sub");
1262 opcode << (op != 0 ? "cbnz" : "cbz");
1275 case 0: opcode << "nop"; break;
1276 case 1: opcode << "yield"; break;
1277 case 2: opcode << "wfe"; break;
1278 case 3: opcode << "sev"; break;
1284 opcode << "it";
1286 // Flesh out the base "it" opcode with the specific collection of 't's and 'e's,
1294 opcode << 't';
1297 opcode << 'e';
1323 opcode << ((instr & 0x800) == 0 ? "str" : "ldr");
1332 opcode << ((instr & 0x800) == 0 ? "str" : "ldr");
1343 opcode << "b";
1347 // Apply any IT-block conditions to the opcode if necessary.
1349 opcode << it_conditions_.back();
1353 os << StringPrintf("%p: %04x \t%-7s ", instr_ptr, instr, opcode.str().c_str()) << args.str() << '\n';