OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include <assert.h> | 5 #include <assert.h> |
6 #include <stdarg.h> | 6 #include <stdarg.h> |
7 #include <stdio.h> | 7 #include <stdio.h> |
8 | 8 |
9 #if V8_TARGET_ARCH_X64 | 9 #if V8_TARGET_ARCH_X64 |
10 | 10 |
(...skipping 966 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
977 current += PrintRightXMMOperand(current); | 977 current += PrintRightXMMOperand(current); |
978 break; | 978 break; |
979 case 0x11: | 979 case 0x11: |
980 AppendToBuffer("vmovss "); | 980 AppendToBuffer("vmovss "); |
981 current += PrintRightXMMOperand(current); | 981 current += PrintRightXMMOperand(current); |
982 if (mod == 3) { | 982 if (mod == 3) { |
983 AppendToBuffer(",%s", NameOfXMMRegister(vvvv)); | 983 AppendToBuffer(",%s", NameOfXMMRegister(vvvv)); |
984 } | 984 } |
985 AppendToBuffer(",%s", NameOfXMMRegister(regop)); | 985 AppendToBuffer(",%s", NameOfXMMRegister(regop)); |
986 break; | 986 break; |
| 987 case 0x2a: |
| 988 AppendToBuffer("%s %s,%s,", vex_w() ? "vcvtqsi2ss" : "vcvtlsi2ss", |
| 989 NameOfXMMRegister(regop), NameOfXMMRegister(vvvv)); |
| 990 current += PrintRightOperand(current); |
| 991 break; |
987 case 0x58: | 992 case 0x58: |
988 AppendToBuffer("vaddss %s,%s,", NameOfXMMRegister(regop), | 993 AppendToBuffer("vaddss %s,%s,", NameOfXMMRegister(regop), |
989 NameOfXMMRegister(vvvv)); | 994 NameOfXMMRegister(vvvv)); |
990 current += PrintRightXMMOperand(current); | 995 current += PrintRightXMMOperand(current); |
991 break; | 996 break; |
992 case 0x59: | 997 case 0x59: |
993 AppendToBuffer("vmulss %s,%s,", NameOfXMMRegister(regop), | 998 AppendToBuffer("vmulss %s,%s,", NameOfXMMRegister(regop), |
994 NameOfXMMRegister(vvvv)); | 999 NameOfXMMRegister(vvvv)); |
995 current += PrintRightXMMOperand(current); | 1000 current += PrintRightXMMOperand(current); |
996 break; | 1001 break; |
(...skipping 1488 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2485 for (int i = 6 - static_cast<int>(pc - prev_pc); i >= 0; i--) { | 2490 for (int i = 6 - static_cast<int>(pc - prev_pc); i >= 0; i--) { |
2486 fprintf(f, " "); | 2491 fprintf(f, " "); |
2487 } | 2492 } |
2488 fprintf(f, " %s\n", buffer.start()); | 2493 fprintf(f, " %s\n", buffer.start()); |
2489 } | 2494 } |
2490 } | 2495 } |
2491 | 2496 |
2492 } // namespace disasm | 2497 } // namespace disasm |
2493 | 2498 |
2494 #endif // V8_TARGET_ARCH_X64 | 2499 #endif // V8_TARGET_ARCH_X64 |
OLD | NEW |