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

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

Issue 1419983002: [x64] Implement vpcmpeqd, vpslld, vpsrld AVX instructions. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 1 month 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/macro-assembler-x64.h » ('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 1232 matching lines...) Expand 10 before | Expand all | Expand 10 after
1243 case 0x57: 1243 case 0x57:
1244 AppendToBuffer("vxorpd %s,%s,", NameOfXMMRegister(regop), 1244 AppendToBuffer("vxorpd %s,%s,", NameOfXMMRegister(regop),
1245 NameOfXMMRegister(vvvv)); 1245 NameOfXMMRegister(vvvv));
1246 current += PrintRightXMMOperand(current); 1246 current += PrintRightXMMOperand(current);
1247 break; 1247 break;
1248 case 0x6e: 1248 case 0x6e:
1249 AppendToBuffer("vmov%c %s,", vex_w() ? 'q' : 'd', 1249 AppendToBuffer("vmov%c %s,", vex_w() ? 'q' : 'd',
1250 NameOfXMMRegister(regop)); 1250 NameOfXMMRegister(regop));
1251 current += PrintRightOperand(current); 1251 current += PrintRightOperand(current);
1252 break; 1252 break;
1253 case 0x73:
1254 AppendToBuffer("%s %s,", regop == 6 ? "vpsllq" : "vpsrlq",
1255 NameOfXMMRegister(vvvv));
1256 current += PrintRightXMMOperand(current);
1257 AppendToBuffer(",%u", *current++);
1258 break;
1259 case 0x76:
1260 AppendToBuffer("vpcmpeqd %s,%s,", NameOfXMMRegister(regop),
1261 NameOfXMMRegister(vvvv));
1262 current += PrintRightXMMOperand(current);
1263 break;
1253 case 0x7e: 1264 case 0x7e:
1254 AppendToBuffer("vmov%c ", vex_w() ? 'q' : 'd'); 1265 AppendToBuffer("vmov%c ", vex_w() ? 'q' : 'd');
1255 current += PrintRightOperand(current); 1266 current += PrintRightOperand(current);
1256 AppendToBuffer(",%s", NameOfXMMRegister(regop)); 1267 AppendToBuffer(",%s", NameOfXMMRegister(regop));
1257 break; 1268 break;
1258 default: 1269 default:
1259 UnimplementedInstruction(); 1270 UnimplementedInstruction();
1260 } 1271 }
1261 1272
1262 } else { 1273 } else {
(...skipping 1175 matching lines...) Expand 10 before | Expand all | Expand 10 after
2438 for (int i = 6 - static_cast<int>(pc - prev_pc); i >= 0; i--) { 2449 for (int i = 6 - static_cast<int>(pc - prev_pc); i >= 0; i--) {
2439 fprintf(f, " "); 2450 fprintf(f, " ");
2440 } 2451 }
2441 fprintf(f, " %s\n", buffer.start()); 2452 fprintf(f, " %s\n", buffer.start());
2442 } 2453 }
2443 } 2454 }
2444 2455
2445 } // namespace disasm 2456 } // namespace disasm
2446 2457
2447 #endif // V8_TARGET_ARCH_X64 2458 #endif // V8_TARGET_ARCH_X64
OLDNEW
« no previous file with comments | « src/x64/assembler-x64.cc ('k') | src/x64/macro-assembler-x64.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698