Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6)

Side by Side Diff: src/x64/disasm-x64.cc

Issue 1413183002: [x64] Emit vmovss when AVX is enabled. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/x64/assembler-x64.cc ('k') | src/x64/lithium-codegen-x64.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 938 matching lines...) Expand 10 before | Expand all | Expand 10 after
949 current += PrintRightOperand(current); 949 current += PrintRightOperand(current);
950 AppendToBuffer(",%s", NameOfCPURegister(vvvv)); 950 AppendToBuffer(",%s", NameOfCPURegister(vvvv));
951 break; 951 break;
952 default: 952 default:
953 UnimplementedInstruction(); 953 UnimplementedInstruction();
954 } 954 }
955 } else if (vex_f3() && vex_0f()) { 955 } else if (vex_f3() && vex_0f()) {
956 int mod, regop, rm, vvvv = vex_vreg(); 956 int mod, regop, rm, vvvv = vex_vreg();
957 get_modrm(*current, &mod, &regop, &rm); 957 get_modrm(*current, &mod, &regop, &rm);
958 switch (opcode) { 958 switch (opcode) {
959 case 0x10:
960 AppendToBuffer("vmovss %s,", NameOfXMMRegister(regop));
961 current += PrintRightXMMOperand(current);
962 break;
963 case 0x11:
964 AppendToBuffer("vmovss ");
965 current += PrintRightXMMOperand(current);
966 AppendToBuffer(",%s", NameOfXMMRegister(regop));
967 break;
959 case 0x58: 968 case 0x58:
960 AppendToBuffer("vaddss %s,%s,", NameOfXMMRegister(regop), 969 AppendToBuffer("vaddss %s,%s,", NameOfXMMRegister(regop),
961 NameOfXMMRegister(vvvv)); 970 NameOfXMMRegister(vvvv));
962 current += PrintRightXMMOperand(current); 971 current += PrintRightXMMOperand(current);
963 break; 972 break;
964 case 0x59: 973 case 0x59:
965 AppendToBuffer("vmulss %s,%s,", NameOfXMMRegister(regop), 974 AppendToBuffer("vmulss %s,%s,", NameOfXMMRegister(regop),
966 NameOfXMMRegister(vvvv)); 975 NameOfXMMRegister(vvvv));
967 current += PrintRightXMMOperand(current); 976 current += PrintRightXMMOperand(current);
968 break; 977 break;
(...skipping 1439 matching lines...) Expand 10 before | Expand all | Expand 10 after
2408 for (int i = 6 - static_cast<int>(pc - prev_pc); i >= 0; i--) { 2417 for (int i = 6 - static_cast<int>(pc - prev_pc); i >= 0; i--) {
2409 fprintf(f, " "); 2418 fprintf(f, " ");
2410 } 2419 }
2411 fprintf(f, " %s\n", buffer.start()); 2420 fprintf(f, " %s\n", buffer.start());
2412 } 2421 }
2413 } 2422 }
2414 2423
2415 } // namespace disasm 2424 } // namespace disasm
2416 2425
2417 #endif // V8_TARGET_ARCH_X64 2426 #endif // V8_TARGET_ARCH_X64
OLDNEW
« no previous file with comments | « src/x64/assembler-x64.cc ('k') | src/x64/lithium-codegen-x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698