Lines Matching refs:Format
70 int FormatFPRegister(Instruction* instr, const char* format);
76 void Format(Instruction* instr, const char* format);
150 int Decoder::FormatRegister(Instruction* instr, const char* format) {
151 DCHECK(format[0] == 'r');
153 if ((format[1] == 't') || (format[1] == 's')) { // 'rt & 'rs register
157 } else if (format[1] == 'a') { // 'ra: RA register
161 } else if (format[1] == 'b') { // 'rb: RB register
174 int Decoder::FormatFPRegister(Instruction* instr, const char* format) {
175 DCHECK(format[0] == 'D');
179 if (format[1] == 't') {
181 } else if (format[1] == 'a') {
183 } else if (format[1] == 'b') {
185 } else if (format[1] == 'c') {
198 // the current instructions. The format string points to the first
202 int Decoder::FormatOption(Instruction* instr, const char* format) {
203 switch (format[0]) {
219 return FormatRegister(instr, format);
222 return FormatFPRegister(instr, format);
258 DCHECK(STRING_STARTS_WITH(format, "target"));
259 if ((format[6] == '2') && (format[7] == '6')) {
265 } else if ((format[6] == '1') && (format[7] == '6')) {
273 DCHECK(format[1] == 'h');
290 if (format[1] == 'e') {
298 } else if (format[1] == 'b') {
307 UNREACHABLE(); // bad format
331 // Format takes a formatting string for a whole instruction and prints it into
334 void Decoder::Format(Instruction* instr, const char* format) {
335 char cur = *format++;
338 format += FormatOption(instr, format);
342 cur = *format++;
359 void Decoder::Unknown(Instruction* instr) { Format(instr, "unknown"); }
367 snprintf(buffer, sizeof(buffer), "%s (unknown-format)", name);
368 Format(instr, buffer);
394 Format(instr, "bnelr'l'cr");
397 Format(instr, "blelr'l'cr");
400 Format(instr, "bgelr'l'cr");
403 Format(instr, "bnsolr'l'cr");
419 Format(instr, "beqlr'l'cr");
422 Format(instr, "bgtlr'l'cr");
425 Format(instr, "bltlr'l'cr");
428 Format(instr, "bsolr'l'cr");
442 Format(instr, "blr'l");
484 Format(instr, "bctrl");
486 Format(instr, "bctr");
495 Format(instr, "crnor (stuff)");
499 Format(instr, "rfi (stuff)");
503 Format(instr, "crandc (stuff)");
507 Format(instr, "isync (stuff)");
511 Format(instr, "crxor (stuff)");
545 Format(instr, "srw'. 'ra, 'rs, 'rb");
550 Format(instr, "srd'. 'ra, 'rs, 'rb");
555 Format(instr, "sraw'. 'ra, 'rs, 'rb");
560 Format(instr, "srad'. 'ra, 'rs, 'rb");
565 Format(instr, "srawi'. 'ra,'rs,'sh");
569 Format(instr, "extsh'. 'ra, 'rs");
574 Format(instr, "extsw'. 'ra, 'rs");
579 Format(instr, "extsb'. 'ra, 'rs");
583 Format(instr, "lfsx 'rt, 'ra, 'rb");
587 Format(instr, "lfsux 'rt, 'ra, 'rb");
591 Format(instr, "lfdx 'rt, 'ra, 'rb");
595 Format(instr, "lfdux 'rt, 'ra, 'rb");
599 Format(instr, "stfsx 'rs, 'ra, 'rb");
603 Format(instr, "stfsux 'rs, 'ra, 'rb");
607 Format(instr, "stfdx 'rs, 'ra, 'rb");
611 Format(instr, "stfdux 'rs, 'ra, 'rb");
615 Format(instr, "popcntw 'ra, 'rs");
620 Format(instr, "popcntd 'ra, 'rs");
628 Format(instr, "sradi'. 'ra,'rs,'sh");
639 Format(instr, "cmp 'ra, 'rb");
642 Format(instr, "cmpw 'ra, 'rb");
648 Format(instr, "slw'. 'ra, 'rs, 'rb");
653 Format(instr, "sld'. 'ra, 'rs, 'rb");
658 Format(instr, "subfc'. 'rt, 'ra, 'rb");
662 Format(instr, "subfe'. 'rt, 'ra, 'rb");
666 Format(instr, "addc'. 'rt, 'ra, 'rb");
670 Format(instr, "adde'. 'rt, 'ra, 'rb");
674 Format(instr, "cntlzw'. 'ra, 'rs");
679 Format(instr, "cntlzd'. 'ra, 'rs");
684 Format(instr, "and'. 'ra, 'rs, 'rb");
688 Format(instr, "andc'. 'ra, 'rs, 'rb");
695 Format(instr, "cmpl 'ra, 'rb");
698 Format(instr, "cmplw 'ra, 'rb");
704 Format(instr, "neg'. 'rt, 'ra");
708 Format(instr, "nor'. 'rt, 'ra, 'rb");
712 Format(instr, "subf'. 'rt, 'ra, 'rb");
716 Format(instr, "mulhw'o'. 'rt, 'ra, 'rb");
720 Format(instr, "addze'. 'rt, 'ra");
724 Format(instr, "mullw'o'. 'rt, 'ra, 'rb");
729 Format(instr, "mulld'o'. 'rt, 'ra, 'rb");
734 Format(instr, "divw'o'. 'rt, 'ra, 'rb");
738 Format(instr, "divwu'o'. 'rt, 'ra, 'rb");
743 Format(instr, "divd'o'. 'rt, 'ra, 'rb");
748 Format(instr, "add'o 'rt, 'ra, 'rb");
752 Format(instr, "xor'. 'ra, 'rs, 'rb");
757 Format(instr, "mr 'ra, 'rb");
759 Format(instr, "or 'ra, 'rs, 'rb");
766 Format(instr, "mflr 'rt");
768 Format(instr, "mfspr 'rt ??");
775 Format(instr, "mtlr 'rt");
777 Format(instr, "mtctr 'rt");
779 Format(instr, "mtspr 'rt ??");
784 Format(instr, "mfcr 'rt");
788 Format(instr, "stwx 'rs, 'ra, 'rb");
792 Format(instr, "stwux 'rs, 'ra, 'rb");
796 Format(instr, "stbx 'rs, 'ra, 'rb");
800 Format(instr, "stbux 'rs, 'ra, 'rb");
804 Format(instr, "sthx 'rs, 'ra, 'rb");
808 Format(instr, "sthux 'rs, 'ra, 'rb");
812 Format(instr, "lwzx 'rt, 'ra, 'rb");
816 Format(instr, "lwzux 'rt, 'ra, 'rb");
820 Format(instr, "lwax 'rt, 'ra, 'rb");
824 Format(instr, "lbzx 'rt, 'ra, 'rb");
828 Format(instr, "lbzux 'rt, 'ra, 'rb");
832 Format(instr, "lhzx 'rt, 'ra, 'rb");
836 Format(instr, "lhzux 'rt, 'ra, 'rb");
840 Format(instr, "lhax 'rt, 'ra, 'rb");
845 Format(instr, "ldx 'rt, 'ra, 'rb");
849 Format(instr, "ldux 'rt, 'ra, 'rb");
853 Format(instr, "stdx 'rt, 'ra, 'rb");
857 Format(instr, "stdux 'rt, 'ra, 'rb");
861 Format(instr, "mffprd 'ra, 'Dt");
865 Format(instr, "mffprwz 'ra, 'Dt");
869 Format(instr, "mtfprd 'Dt, 'ra");
873 Format(instr, "mtfprwa 'Dt, 'ra");
877 Format(instr, "mtfprwz 'Dt, 'ra");
885 Format(instr, "isel 'rt, 'ra, 'rb");
898 Format(instr, "fcfids'. 'Dt, 'Db");
902 Format(instr, "fcfidus'.'Dt, 'Db");
915 Format(instr, "fdiv'. 'Dt, 'Da, 'Db");
919 Format(instr, "fsub'. 'Dt, 'Da, 'Db");
923 Format(instr, "fadd'. 'Dt, 'Da, 'Db");
927 Format(instr, "fsqrt'. 'Dt, 'Db");
931 Format(instr, "fsel'. 'Dt, 'Da, 'Dc, 'Db");
935 Format(instr, "fmul'. 'Dt, 'Da, 'Dc");
939 Format(instr, "fmsub'. 'Dt, 'Da, 'Dc, 'Db");
943 Format(instr, "fmadd'. 'Dt, 'Da, 'Dc, 'Db");
950 Format(instr, "fcmpu 'Da, 'Db");
954 Format(instr, "frsp'. 'Dt, 'Db");
958 Format(instr, "fcfid'. 'Dt, 'Db");
962 Format(instr, "fcfidu'. 'Dt, 'Db");
966 Format(instr, "fctid 'Dt, 'Db");
970 Format(instr, "fctidz 'Dt, 'Db");
974 Format(instr, "fctidu 'Dt, 'Db");
978 Format(instr, "fctiduz 'Dt, 'Db");
982 Format(instr, "fctiw'. 'Dt, 'Db");
986 Format(instr, "fctiwz'. 'Dt, 'Db");
990 Format(instr, "fmr'. 'Dt, 'Db");
994 Format(instr, "mtfsfi'. ?,?");
998 Format(instr, "mffs'. 'Dt");
1002 Format(instr, "mtfsf'. 'Db ?,?,?");
1006 Format(instr, "fabs'. 'Dt, 'Db");
1010 Format(instr, "frin. 'Dt, 'Db");
1014 Format(instr, "friz. 'Dt, 'Db");
1018 Format(instr, "frip. 'Dt, 'Db");
1022 Format(instr, "frim. 'Dt, 'Db");
1026 Format(instr, "fneg'. 'Dt, 'Db");
1030 Format(instr, "mcrfs ?,?");
1034 Format(instr, "mtfsb0'. ?");
1038 Format(instr, "mtfsb1'. ?");
1051 Format(instr, "rldicl'. 'ra, 'rs, 'sh, 'mb");
1055 Format(instr, "rldicr'. 'ra, 'rs, 'sh, 'me");
1059 Format(instr, "rldic'. 'ra, 'rs, 'sh, 'mb");
1063 Format(instr, "rldimi'. 'ra, 'rs, 'sh, 'mb");
1069 Format(instr, "rldcl'. 'ra, 'rs, 'sb, 'mb");
1088 Format(instr, "constant");
1102 Format(instr, "subfic 'rt, 'ra, 'int16");
1109 Format(instr, "cmpli 'ra, 'uint16");
1112 Format(instr, "cmplwi 'ra, 'uint16");
1121 Format(instr, "cmpi 'ra, 'int16");
1124 Format(instr, "cmpwi 'ra, 'int16");
1130 Format(instr, "addic 'rt, 'ra, 'int16");
1140 Format(instr, "li 'rt, 'int16");
1142 Format(instr, "addi 'rt, 'ra, 'int16");
1148 Format(instr, "lis 'rt, 'int16");
1150 Format(instr, "addis 'rt, 'ra, 'int16");
1162 Format(instr, "beq'l'a'cr 'target16");
1165 Format(instr, "bgt'l'a'cr 'target16");
1168 Format(instr, "blt'l'a'cr 'target16");
1171 Format(instr, "bso'l'a'cr 'target16");
1179 Format(instr, "bne'l'a'cr 'target16");
1182 Format(instr, "ble'l'a'cr 'target16");
1185 Format(instr, "bge'l'a'cr 'target16");
1188 Format(instr, "bnso'l'a'cr 'target16");
1194 Format(instr, "bdnz'l'a 'target16");
1198 Format(instr, "bc'l'a'cr 'target16");
1208 Format(instr, "b'l'a 'target26");
1216 Format(instr, "rlwimi'. 'ra, 'rs, 'sh, 'me, 'mb");
1220 Format(instr, "rlwinm'. 'ra, 'rs, 'sh, 'me, 'mb");
1224 Format(instr, "rlwnm'. 'ra, 'rs, 'rb, 'me, 'mb");
1228 Format(instr, "ori 'ra, 'rs, 'uint16");
1232 Format(instr, "oris 'ra, 'rs, 'uint16");
1236 Format(instr, "xori 'ra, 'rs, 'uint16");
1240 Format(instr, "xoris 'ra, 'rs, 'uint16");
1244 Format(instr, "andi. 'ra, 'rs, 'uint16");
1248 Format(instr, "andis. 'ra, 'rs, 'uint16");
1256 Format(instr, "lwz 'rt, 'int16('ra)");
1260 Format(instr, "lwzu 'rt, 'int16('ra)");
1264 Format(instr, "lbz 'rt, 'int16('ra)");
1268 Format(instr, "lbzu 'rt, 'int16('ra)");
1272 Format(instr, "stw 'rs, 'int16('ra)");
1276 Format(instr, "stwu 'rs, 'int16('ra)");
1280 Format(instr, "stb 'rs, 'int16('ra)");
1284 Format(instr, "stbu 'rs, 'int16('ra)");
1288 Format(instr, "lhz 'rt, 'int16('ra)");
1292 Format(instr, "lhzu 'rt, 'int16('ra)");
1296 Format(instr, "lha 'rt, 'int16('ra)");
1300 Format(instr, "lhau 'rt, 'int16('ra)");
1304 Format(instr, "sth 'rs, 'int16('ra)");
1308 Format(instr, "sthu 'rs, 'int16('ra)");
1320 Format(instr, "lfs 'Dt, 'int16('ra)");
1324 Format(instr, "lfsu 'Dt, 'int16('ra)");
1328 Format(instr, "lfd 'Dt, 'int16('ra)");
1332 Format(instr, "lfdu 'Dt, 'int16('ra)");
1336 Format(instr, "stfs 'Dt, 'int16('ra)");
1340 Format(instr, "stfsu 'Dt, 'int16('ra)");
1344 Format(instr, "stfd 'Dt, 'int16('ra)");
1348 Format(instr, "stfdu 'Dt, 'int16('ra)");
1367 Format(instr, "ld 'rt, 'd('ra)");
1370 Format(instr, "ldu 'rt, 'd('ra)");
1373 Format(instr, "lwa 'rt, 'd('ra)");
1380 Format(instr, "std 'rs, 'd('ra)");
1382 Format(instr, "stdu 'rs, 'd('ra)");