Lines Matching defs:format
109 void PrintFormat(Instruction* instr); // For floating format postfix.
127 void Format(Instruction* instr, const char* format);
613 int Decoder::FormatRegister(Instruction* instr, const char* format) {
614 DCHECK_EQ(format[0], 'r');
615 if (format[1] == 's') { // 'rs: Rs register.
619 } else if (format[1] == 't') { // 'rt: rt register.
623 } else if (format[1] == 'd') { // 'rd: rd register.
633 int Decoder::FormatFPURegister(Instruction* instr, const char* format) {
634 DCHECK_EQ(format[0], 'f');
636 if (format[1] == 's') { // 'fs: fs register.
640 } else if (format[1] == 't') { // 'ft: ft register.
644 } else if (format[1] == 'd') { // 'fd: fd register.
648 } else if (format[1] == 'r') { // 'fr: fr register.
654 if (format[1] == 's') { // 'fs: fs register.
658 } else if (format[1] == 't') { // 'ft: ft register.
662 } else if (format[1] == 'd') { // 'fd: fd register.
666 } else if (format[1] == 'r') { // 'fr: fr register.
677 int Decoder::FormatMSARegister(Instruction* instr, const char* format) {
678 DCHECK_EQ(format[0], 'w');
679 if (format[1] == 's') {
683 } else if (format[1] == 't') {
687 } else if (format[1] == 'd') {
697 // the current instructions. The format string points to the first
701 int Decoder::FormatOption(Instruction* instr, const char* format) {
702 switch (format[0]) {
704 DCHECK(STRING_STARTS_WITH(format, "code"));
709 if (format[3] == '1') {
710 if (format[4] == '6') {
711 DCHECK(STRING_STARTS_WITH(format, "imm16"));
712 switch (format[5]) {
714 DCHECK(STRING_STARTS_WITH(format, "imm16s"));
718 DCHECK(STRING_STARTS_WITH(format, "imm16u"));
722 DCHECK(STRING_STARTS_WITH(format, "imm16x"));
726 DCHECK(STRING_STARTS_WITH(format, "imm16p"));
729 switch (format[6]) {
731 DCHECK(STRING_STARTS_WITH(format, "imm16p4"));
733 switch (format[8]) {
735 DCHECK(STRING_STARTS_WITH(format, "imm16p4s2"));
745 } else if (format[4] == '8') {
746 DCHECK(STRING_STARTS_WITH(format, "imm18"));
747 switch (format[5]) {
749 DCHECK(STRING_STARTS_WITH(format, "imm18s"));
753 DCHECK(STRING_STARTS_WITH(format, "imm18x"));
758 } else if (format[4] == '9') {
759 DCHECK(STRING_STARTS_WITH(format, "imm19"));
760 switch (format[5]) {
762 DCHECK(STRING_STARTS_WITH(format, "imm19s"));
766 DCHECK(STRING_STARTS_WITH(format, "imm19x"));
771 } else if (format[4] == '0' && format[5] == 's') {
772 DCHECK(STRING_STARTS_WITH(format, "imm10s"));
773 if (format[6] == '1') {
774 DCHECK(STRING_STARTS_WITH(format, "imm10s1"));
776 } else if (format[6] == '2') {
777 DCHECK(STRING_STARTS_WITH(format, "imm10s2"));
782 } else if (format[3] == '2' && format[4] == '1') {
783 DCHECK(STRING_STARTS_WITH(format, "imm21"));
784 switch (format[5]) {
786 DCHECK(STRING_STARTS_WITH(format, "imm21s"));
790 DCHECK(STRING_STARTS_WITH(format, "imm21x"));
794 DCHECK(STRING_STARTS_WITH(format, "imm21p"));
797 switch (format[6]) {
799 DCHECK(STRING_STARTS_WITH(format, "imm21p4"));
801 switch (format[8]) {
803 DCHECK(STRING_STARTS_WITH(format, "imm21p4s2"));
813 } else if (format[3] == '2' && format[4] == '6') {
814 DCHECK(STRING_STARTS_WITH(format, "imm26"));
815 switch (format[5]) {
817 DCHECK(STRING_STARTS_WITH(format, "imm26s"));
821 DCHECK(STRING_STARTS_WITH(format, "imm26x"));
825 DCHECK(STRING_STARTS_WITH(format, "imm26p"));
828 switch (format[6]) {
830 DCHECK(STRING_STARTS_WITH(format, "imm26p4"));
832 switch (format[8]) {
834 DCHECK(STRING_STARTS_WITH(format, "imm26p4s2"));
843 DCHECK(STRING_STARTS_WITH(format, "imm26j"));
849 } else if (format[3] == '5') {
850 DCHECK(STRING_STARTS_WITH(format, "imm5"));
851 if (format[4] == 'u') {
852 DCHECK(STRING_STARTS_WITH(format, "imm5u"));
854 } else if (format[4] == 's') {
855 DCHECK(STRING_STARTS_WITH(format, "imm5s"));
859 } else if (format[3] == '8') {
860 DCHECK(STRING_STARTS_WITH(format, "imm8"));
863 } else if (format[3] == '9') {
864 DCHECK(STRING_STARTS_WITH(format, "imm9"));
865 if (format[4] == 'u') {
866 DCHECK(STRING_STARTS_WITH(format, "imm9u"));
868 } else if (format[4] == 's') {
869 DCHECK(STRING_STARTS_WITH(format, "imm9s"));
873 } else if (format[3] == 'b') {
874 DCHECK(STRING_STARTS_WITH(format, "immb"));
877 } else if (format[3] == 'e') {
878 DCHECK(STRING_STARTS_WITH(format, "imme"));
885 return FormatRegister(instr, format);
888 return FormatFPURegister(instr, format);
891 return FormatMSARegister(instr, format);
894 switch (format[1]) {
896 if (format[2] == '2') {
897 DCHECK(STRING_STARTS_WITH(format, "sa2")); // 'sa2
901 DCHECK(STRING_STARTS_WITH(format, "sa"));
906 DCHECK(STRING_STARTS_WITH(format, "sd"));
911 if (format[2] == '1') {
912 DCHECK(STRING_STARTS_WITH(format, "ss1")); /* ext size */
916 DCHECK(STRING_STARTS_WITH(format, "ss2")); /* ins size */
924 switch (format[1]) {
926 DCHECK(STRING_STARTS_WITH(format, "bc"));
931 switch (format[2]) {
933 DCHECK(STRING_STARTS_WITH(format, "bp2"));
942 DCHECK(STRING_STARTS_WITH(format, "Cc"));
960 void Decoder::Format(Instruction* instr, const char* format) {
961 char cur = *format++;
964 format += FormatOption(instr, format);
968 cur = *format++;