OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 893 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
904 has_register = true; | 904 has_register = true; |
905 break; | 905 break; |
906 case 0xC8: | 906 case 0xC8: |
907 mnem = "fxch"; | 907 mnem = "fxch"; |
908 has_register = true; | 908 has_register = true; |
909 break; | 909 break; |
910 default: | 910 default: |
911 switch (modrm_byte) { | 911 switch (modrm_byte) { |
912 case 0xE0: mnem = "fchs"; break; | 912 case 0xE0: mnem = "fchs"; break; |
913 case 0xE1: mnem = "fabs"; break; | 913 case 0xE1: mnem = "fabs"; break; |
| 914 case 0xE3: mnem = "fninit"; break; |
914 case 0xE4: mnem = "ftst"; break; | 915 case 0xE4: mnem = "ftst"; break; |
915 case 0xE8: mnem = "fld1"; break; | 916 case 0xE8: mnem = "fld1"; break; |
916 case 0xEB: mnem = "fldpi"; break; | 917 case 0xEB: mnem = "fldpi"; break; |
917 case 0xED: mnem = "fldln2"; break; | 918 case 0xED: mnem = "fldln2"; break; |
918 case 0xEE: mnem = "fldz"; break; | 919 case 0xEE: mnem = "fldz"; break; |
| 920 case 0xF0: mnem = "f2xm1"; break; |
919 case 0xF1: mnem = "fyl2x"; break; | 921 case 0xF1: mnem = "fyl2x"; break; |
| 922 case 0xF2: mnem = "fptan"; break; |
920 case 0xF5: mnem = "fprem1"; break; | 923 case 0xF5: mnem = "fprem1"; break; |
921 case 0xF7: mnem = "fincstp"; break; | 924 case 0xF7: mnem = "fincstp"; break; |
922 case 0xF8: mnem = "fprem"; break; | 925 case 0xF8: mnem = "fprem"; break; |
| 926 case 0xFD: mnem = "fscale"; break; |
923 case 0xFE: mnem = "fsin"; break; | 927 case 0xFE: mnem = "fsin"; break; |
924 case 0xFF: mnem = "fcos"; break; | 928 case 0xFF: mnem = "fcos"; break; |
925 default: UnimplementedInstruction(); | 929 default: UnimplementedInstruction(); |
926 } | 930 } |
927 } | 931 } |
928 break; | 932 break; |
929 | 933 |
930 case 0xDA: | 934 case 0xDA: |
931 if (modrm_byte == 0xE9) { | 935 if (modrm_byte == 0xE9) { |
932 mnem = "fucompp"; | 936 mnem = "fucompp"; |
(...skipping 904 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1837 for (int i = 6 - static_cast<int>(pc - prev_pc); i >= 0; i--) { | 1841 for (int i = 6 - static_cast<int>(pc - prev_pc); i >= 0; i--) { |
1838 fprintf(f, " "); | 1842 fprintf(f, " "); |
1839 } | 1843 } |
1840 fprintf(f, " %s\n", buffer.start()); | 1844 fprintf(f, " %s\n", buffer.start()); |
1841 } | 1845 } |
1842 } | 1846 } |
1843 | 1847 |
1844 } // namespace disasm | 1848 } // namespace disasm |
1845 | 1849 |
1846 #endif // V8_TARGET_ARCH_X64 | 1850 #endif // V8_TARGET_ARCH_X64 |
OLD | NEW |