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

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

Issue 658813003: [x64] simply tweak materialization of float/double constants (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 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 | Annotate | Revision Log
« no previous file with comments | « src/x64/assembler-x64-inl.h ('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 #include "src/v8.h" 9 #include "src/v8.h"
10 10
(...skipping 1048 matching lines...) Expand 10 before | Expand all | Expand 10 after
1059 AppendToBuffer("movdqa "); 1059 AppendToBuffer("movdqa ");
1060 current += PrintRightXMMOperand(current); 1060 current += PrintRightXMMOperand(current);
1061 AppendToBuffer(",%s", NameOfXMMRegister(regop)); 1061 AppendToBuffer(",%s", NameOfXMMRegister(regop));
1062 } else if (opcode == 0xD6) { 1062 } else if (opcode == 0xD6) {
1063 AppendToBuffer("movq "); 1063 AppendToBuffer("movq ");
1064 current += PrintRightXMMOperand(current); 1064 current += PrintRightXMMOperand(current);
1065 AppendToBuffer(",%s", NameOfXMMRegister(regop)); 1065 AppendToBuffer(",%s", NameOfXMMRegister(regop));
1066 } else if (opcode == 0x50) { 1066 } else if (opcode == 0x50) {
1067 AppendToBuffer("movmskpd %s,", NameOfCPURegister(regop)); 1067 AppendToBuffer("movmskpd %s,", NameOfCPURegister(regop));
1068 current += PrintRightXMMOperand(current); 1068 current += PrintRightXMMOperand(current);
1069 } else if (opcode == 0x72) {
1070 current += 1;
1071 AppendToBuffer("%s,%s,%d", (regop == 6) ? "pslld" : "psrld",
1072 NameOfXMMRegister(rm), *current & 0x7f);
1073 current += 1;
1069 } else if (opcode == 0x73) { 1074 } else if (opcode == 0x73) {
1070 current += 1; 1075 current += 1;
1071 DCHECK(regop == 6); 1076 AppendToBuffer("%s,%s,%d", (regop == 6) ? "psllq" : "psrlq",
1072 AppendToBuffer("psllq,%s,%d", NameOfXMMRegister(rm), *current & 0x7f); 1077 NameOfXMMRegister(rm), *current & 0x7f);
1073 current += 1; 1078 current += 1;
1074 } else { 1079 } else {
1075 const char* mnemonic = "?"; 1080 const char* mnemonic = "?";
1076 if (opcode == 0x54) { 1081 if (opcode == 0x54) {
1077 mnemonic = "andpd"; 1082 mnemonic = "andpd";
1078 } else if (opcode == 0x56) { 1083 } else if (opcode == 0x56) {
1079 mnemonic = "orpd"; 1084 mnemonic = "orpd";
1080 } else if (opcode == 0x57) { 1085 } else if (opcode == 0x57) {
1081 mnemonic = "xorpd"; 1086 mnemonic = "xorpd";
1082 } else if (opcode == 0x2E) { 1087 } else if (opcode == 0x2E) {
(...skipping 820 matching lines...) Expand 10 before | Expand all | Expand 10 after
1903 for (int i = 6 - static_cast<int>(pc - prev_pc); i >= 0; i--) { 1908 for (int i = 6 - static_cast<int>(pc - prev_pc); i >= 0; i--) {
1904 fprintf(f, " "); 1909 fprintf(f, " ");
1905 } 1910 }
1906 fprintf(f, " %s\n", buffer.start()); 1911 fprintf(f, " %s\n", buffer.start());
1907 } 1912 }
1908 } 1913 }
1909 1914
1910 } // namespace disasm 1915 } // namespace disasm
1911 1916
1912 #endif // V8_TARGET_ARCH_X64 1917 #endif // V8_TARGET_ARCH_X64
OLDNEW
« no previous file with comments | « src/x64/assembler-x64-inl.h ('k') | src/x64/macro-assembler-x64.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698