Home | History | Annotate | Download | only in aarch64

Lines Matching defs:FORMAT

107   Format(instr, mnemonic, form);
157 Format(instr, mnemonic, form);
200 Format(instr, mnemonic, form);
240 Format(instr, mnemonic, form);
251 // The immediate encoded in the instruction is not in the expected format.
252 Format(instr, "unallocated", "(LogicalImmediate)");
288 Format(instr, mnemonic, form);
379 Format(instr, mnemonic, form);
399 Format(instr, mnemonic, form);
419 Format(instr, mnemonic, form);
475 Format(instr, mnemonic, form);
553 Format(instr, mnemonic, form);
575 Format(instr, mnemonic, form);
582 Format(instr, "adr", "'Xd, 'AddrPCRelByte");
585 Format(instr, "adrp", "'Xd, 'AddrPCRelPage");
588 Format(instr, "unimplemented", "(PCRelAddressing)");
596 Format(instr, "b.'CBrn", "'TImmCond");
626 Format(instr, mnemonic, form);
644 Format(instr, mnemonic, form);
653 #define FORMAT(A, B) \
658 FORMAT(RBIT, "rbit");
659 FORMAT(REV16, "rev16");
660 FORMAT(REV, "rev");
661 FORMAT(CLZ, "clz");
662 FORMAT(CLS, "cls");
663 #undef FORMAT
670 Format(instr, mnemonic, form);
680 #define FORMAT(A, B) \
685 FORMAT(UDIV, "udiv");
686 FORMAT(SDIV, "sdiv");
687 FORMAT(LSLV, "lsl");
688 FORMAT(LSRV, "lsr");
689 FORMAT(ASRV, "asr");
690 FORMAT(RORV, "ror");
691 #undef FORMAT
721 Format(instr, mnemonic, form);
800 Format(instr, mnemonic, form);
820 Format(instr, mnemonic, form);
842 Format(instr, mnemonic, form);
883 Format(instr, mnemonic, form);
925 Format(instr, mnemonic, form);
942 Format(instr, mnemonic, form);
962 Format(instr, mnemonic, form);
982 Format(instr, mnemonic, form);
1087 Format(instr, mnemonic, form);
1124 Format(instr, mnemonic, form);
1154 Format(instr, mnemonic, form);
1171 Format(instr, mnemonic, form);
1188 Format(instr, mnemonic, form);
1240 Format(instr, mnemonic, form);
1380 Format(instr, mnemonic, form);
1409 Format(instr, mnemonic, form);
1429 Format(instr, mnemonic, form);
1445 Format(instr, mnemonic, form);
1454 #define FORMAT(A, B) \
1459 FORMAT(FMOV, "fmov");
1460 FORMAT(FABS, "fabs");
1461 FORMAT(FNEG, "fneg");
1462 FORMAT(FSQRT, "fsqrt");
1463 FORMAT(FRINTN, "frintn");
1464 FORMAT(FRINTP, "frintp");
1465 FORMAT(FRINTM, "frintm");
1466 FORMAT(FRINTZ, "frintz");
1467 FORMAT(FRINTA, "frinta");
1468 FORMAT(FRINTX, "frintx");
1469 FORMAT(FRINTI, "frinti");
1470 #undef FORMAT
1498 Format(instr, mnemonic, form);
1507 #define FORMAT(A, B) \
1512 FORMAT(FMUL, "fmul");
1513 FORMAT(FDIV, "fdiv");
1514 FORMAT(FADD, "fadd");
1515 FORMAT(FSUB, "fsub");
1516 FORMAT(FMAX, "fmax");
1517 FORMAT(FMIN, "fmin");
1518 FORMAT(FMAXNM, "fmaxnm");
1519 FORMAT(FMINNM, "fminnm");
1520 FORMAT(FNMUL, "fnmul");
1521 #undef FORMAT
1525 Format(instr, mnemonic, form);
1534 #define FORMAT(A, B) \
1539 FORMAT(FMADD, "fmadd");
1540 FORMAT(FMSUB, "fmsub");
1541 FORMAT(FNMADD, "fnmadd");
1542 FORMAT(FNMSUB, "fnmsub");
1543 #undef FORMAT
1547 Format(instr, mnemonic, form);
1567 Format(instr, mnemonic, form);
1681 Format(instr, mnemonic, form);
1720 Format(instr, mnemonic, form);
1810 Format(instr, mnemonic, form);
1849 Format(instr, mnemonic, form);
2125 Format(instr, "unallocated", "(NEON2RegMisc)");
2129 Format(instr, nfd.Mnemonic(mnemonic), nfd.Substitute(form));
2136 Format(instr, mnemonic, nfd.Substitute(form));
2324 Format(instr, mnemonic, nfd.Substitute(form));
2430 Format(instr, nfd.Mnemonic(mnemonic), nfd.Substitute(form));
2492 Format(instr,
2587 Format(instr, nfd.Mnemonic(mnemonic), nfd.Substitute(form));
2590 Format(instr, mnemonic, nfd.Substitute(form));
2593 Format(instr, mnemonic, nfd.Substitute(form));
2645 Format(instr, mnemonic, nfd.Substitute(form));
2657 Format(instr, mnemonic, nfd.Substitute(form));
2740 // LD[2-4] and ST[2-4] cannot use .1d format.
2754 Format(instr, mnemonic, nfd.Substitute(form));
2839 // LD[2-4] and ST[2-4] cannot use .1d format.
2853 Format(instr, mnemonic, nfd.Substitute(form));
3019 Format(instr, mnemonic, nfd.Substitute(form));
3179 Format(instr, mnemonic, nfd.Substitute(form));
3245 Format(instr, mnemonic, nfd.Substitute(form));
3394 Format(instr, mnemonic, nfd.SubstitutePlaceholders(form));
3418 Format(instr, mnemonic, nfd.SubstitutePlaceholders(form));
3532 Format(instr, mnemonic, nfd.SubstitutePlaceholders(form));
3585 Format(instr,
3602 Format(instr, mnemonic, nfd.Substitute(form, nfd.kPlaceholder, nfd.kFormat));
3634 Format(instr,
3759 Format(instr, mnemonic, nfd.SubstitutePlaceholders(form));
3907 Format(instr, mnemonic, nfd.Substitute(form));
3968 Format(instr, mnemonic, nfd.Substitute(re_form));
3999 Format(instr, mnemonic, nfd.Substitute(form));
4004 Format(instr, "unimplemented", "(Unimplemented)");
4009 Format(instr, "unallocated", "(Unallocated)");
4126 void Disassembler::Format(const Instruction *instr,
4128 const char *format) {
4132 if (format != NULL) {
4135 Substitute(instr, format);
4158 const char *format) {
4159 switch (format[0]) {
4163 case 'V': // Vector register, V, vector format.
4171 return SubstituteRegisterField(instr, format);
4173 return SubstituteImmediateField(instr, format);
4175 return SubstituteLiteralField(instr, format);
4177 return SubstituteShiftField(instr, format);
4179 return SubstitutePrefetchField(instr, format);
4181 return SubstituteConditionField(instr, format);
4183 return SubstituteExtendField(instr, format);
4185 return SubstitutePCRelAddressField(instr, format);
4187 return SubstituteBranchTargetField(instr, format);
4189 return SubstituteLSRegOffsetField(instr, format);
4191 return SubstituteBarrierField(instr, format);
4193 return SubstituteCrField(instr, format);
4195 return SubstituteSysOpField(instr, format);
4205 const char *format) {
4206 char reg_prefix = format[0];
4210 switch (format[1]) {
4213 if (format[2] == 'q') {
4223 switch (format[2]) {
4232 int imm = static_cast<int>(strtol(&format[3], &eimm, 10));
4233 field_len += eimm - &format[3];
4235 switch (format[2]) {
4266 if (format[0] == 'V') {
4267 if ((format[2] >= '2') && (format[2] <= '4')) {
4269 reg_num = (reg_num + format[2] - '1') % 32;
4273 if (format[2] == '2') {
4285 if (format[2] == 's') {
4335 (format[2] == 's')) {
4346 const char *format) {
4347 VIXL_ASSERT(format[0] == 'I');
4349 switch (format[1]) {
4351 if (format[5] == 'L') {
4357 VIXL_ASSERT((format[5] == 'I') || (format[5] == 'N'));
4360 if (format[5] == 'N') imm = ~imm;
4367 switch (format[2]) {
4382 // format[3] is the scale value. Convert to a number.
4383 int scale = 1 << (format[3] - '0');
4409 if (format[3] == 'F') { // IFPFbits.
4415 format[3] == 'S' ? instr->GetImmFP32()
4438 return SubstituteBitfieldImmediateField(instr, format);
4451 switch (format[2]) {
4475 switch (format[2]) {
4489 if (strncmp(format, "IVInsIndex", strlen("IVInsIndex")) == 0) {
4497 if (strncmp(format, "IVInsIndex1", strlen("IVInsIndex1")) == 0) {
4500 } else if (strncmp(format,
4512 AppendToOutput("%d", instr->GetNEONLSIndex(format[8] - '0'));
4516 if (strncmp(format, "IVMIImmFPSingle", strlen("IVMIImmFPSingle")) ==
4522 } else if (strncmp(format,
4529 } else if (strncmp(format, "IVMIImm8", strlen("IVMIImm8")) == 0) {
4533 } else if (strncmp(format, "IVMIImm", strlen("IVMIImm")) == 0) {
4543 } else if (strncmp(format,
4550 } else if (strncmp(format,
4600 const char *format) {
4601 VIXL_ASSERT((format[0] == 'I') && (format[1] == 'B'));
4605 switch (format[2]) {
4611 if (format[3] == '+') {
4615 VIXL_ASSERT(format[3] == '-');
4621 VIXL_ASSERT((format[3] == '-') && (format[4] == 'r'));
4636 const char *format) {
4637 VIXL_ASSERT(strncmp(format, "LValue", 6) == 0);
4638 USE(format);
4675 const char *format) {
4676 VIXL_ASSERT(format[0] == 'N');
4679 switch (format[1]) {
4701 const char *format) {
4702 VIXL_ASSERT(format[0] == 'C');
4720 switch (format[1]) {
4737 const char *format) {
4738 VIXL_ASSERT((strcmp(format, "AddrPCRelByte") == 0) || // Used by `adr`.
4739 (strcmp(format, "AddrPCRelPage") == 0)); // Used by `adrp`.
4746 if (format[9] == 'P') {
4763 const char *format) {
4764 VIXL_ASSERT(strncmp(format, "TImm", 4) == 0);
4767 switch (format[5]) {
4800 const char *format) {
4801 VIXL_ASSERT(strncmp(format, "Ext", 3) == 0);
4803 USE(format);
4827 const char *format) {
4828 VIXL_ASSERT(strncmp(format, "Offsetreg", 9) == 0);
4837 USE(format);
4862 const char *format) {
4863 VIXL_ASSERT(format[0] == 'P');
4864 USE(format);
4890 const char *format) {
4891 VIXL_ASSERT(format[0] == 'M');
4892 USE(format);
4906 const char *format) {
4907 VIXL_ASSERT(format[0] == 'G');
4909 switch (format[1]) {
4924 const char *format) {
4925 VIXL_ASSERT(format[0] == 'K');
4927 switch (format[1]) {
4947 void Disassembler::AppendToOutput(const char *format, ...) {
4949 va_start(args, format);
4952 format,