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

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

Issue 974313002: [turbofan] Support for %_DoubleHi, %_DoubleLo and %_ConstructDouble. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Addressed Svens comment. Created 5 years, 9 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/ia32/assembler-ia32.cc ('k') | src/ia32/macro-assembler-ia32.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 1536 matching lines...) Expand 10 before | Expand all | Expand 10 after
1547 } else if (*data == 0x70) { 1547 } else if (*data == 0x70) {
1548 data++; 1548 data++;
1549 int mod, regop, rm; 1549 int mod, regop, rm;
1550 get_modrm(*data, &mod, &regop, &rm); 1550 get_modrm(*data, &mod, &regop, &rm);
1551 int8_t imm8 = static_cast<int8_t>(data[1]); 1551 int8_t imm8 = static_cast<int8_t>(data[1]);
1552 AppendToBuffer("pshufd %s,%s,%d", 1552 AppendToBuffer("pshufd %s,%s,%d",
1553 NameOfXMMRegister(regop), 1553 NameOfXMMRegister(regop),
1554 NameOfXMMRegister(rm), 1554 NameOfXMMRegister(rm),
1555 static_cast<int>(imm8)); 1555 static_cast<int>(imm8));
1556 data += 2; 1556 data += 2;
1557 } else if (*data == 0x62) {
1558 data++;
1559 int mod, regop, rm;
1560 get_modrm(*data, &mod, &regop, &rm);
1561 AppendToBuffer("punpckldq %s,%s", NameOfXMMRegister(regop),
1562 NameOfXMMRegister(rm));
1563 data++;
1564 } else if (*data == 0x6A) {
1565 data++;
1566 int mod, regop, rm;
1567 get_modrm(*data, &mod, &regop, &rm);
1568 AppendToBuffer("punpckhdq %s,%s", NameOfXMMRegister(regop),
1569 NameOfXMMRegister(rm));
1570 data++;
1557 } else if (*data == 0x76) { 1571 } else if (*data == 0x76) {
1558 data++; 1572 data++;
1559 int mod, regop, rm; 1573 int mod, regop, rm;
1560 get_modrm(*data, &mod, &regop, &rm); 1574 get_modrm(*data, &mod, &regop, &rm);
1561 AppendToBuffer("pcmpeqd %s,%s", 1575 AppendToBuffer("pcmpeqd %s,%s",
1562 NameOfXMMRegister(regop), 1576 NameOfXMMRegister(regop),
1563 NameOfXMMRegister(rm)); 1577 NameOfXMMRegister(rm));
1564 data++; 1578 data++;
1565 } else if (*data == 0x90) { 1579 } else if (*data == 0x90) {
1566 data++; 1580 data++;
(...skipping 423 matching lines...) Expand 10 before | Expand all | Expand 10 after
1990 fprintf(f, " "); 2004 fprintf(f, " ");
1991 } 2005 }
1992 fprintf(f, " %s\n", buffer.start()); 2006 fprintf(f, " %s\n", buffer.start());
1993 } 2007 }
1994 } 2008 }
1995 2009
1996 2010
1997 } // namespace disasm 2011 } // namespace disasm
1998 2012
1999 #endif // V8_TARGET_ARCH_IA32 2013 #endif // V8_TARGET_ARCH_IA32
OLDNEW
« no previous file with comments | « src/ia32/assembler-ia32.cc ('k') | src/ia32/macro-assembler-ia32.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698