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

Side by Side Diff: src/compiler/x64/code-generator-x64.cc

Issue 639283003: [turbofan] IA: TruncateFloat64ToFloat32 supports mem operand (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: ia32 port 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
OLDNEW
1 // Copyright 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 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 "src/compiler/code-generator.h" 5 #include "src/compiler/code-generator.h"
6 6
7 #include "src/compiler/code-generator-impl.h" 7 #include "src/compiler/code-generator-impl.h"
8 #include "src/compiler/gap-resolver.h" 8 #include "src/compiler/gap-resolver.h"
9 #include "src/compiler/node-matchers.h" 9 #include "src/compiler/node-matchers.h"
10 #include "src/compiler/node-properties-inl.h" 10 #include "src/compiler/node-properties-inl.h"
(...skipping 390 matching lines...) Expand 10 before | Expand all | Expand 10 after
401 if (instr->InputAt(0)->IsDoubleRegister()) { 401 if (instr->InputAt(0)->IsDoubleRegister()) {
402 __ sqrtsd(i.OutputDoubleRegister(), i.InputDoubleRegister(0)); 402 __ sqrtsd(i.OutputDoubleRegister(), i.InputDoubleRegister(0));
403 } else { 403 } else {
404 __ sqrtsd(i.OutputDoubleRegister(), i.InputOperand(0)); 404 __ sqrtsd(i.OutputDoubleRegister(), i.InputOperand(0));
405 } 405 }
406 break; 406 break;
407 case kSSECvtss2sd: 407 case kSSECvtss2sd:
408 __ cvtss2sd(i.OutputDoubleRegister(), i.InputDoubleRegister(0)); 408 __ cvtss2sd(i.OutputDoubleRegister(), i.InputDoubleRegister(0));
409 break; 409 break;
410 case kSSECvtsd2ss: 410 case kSSECvtsd2ss:
411 __ cvtsd2ss(i.OutputDoubleRegister(), i.InputDoubleRegister(0)); 411 if (instr->InputAt(0)->IsDoubleRegister()) {
412 __ cvtsd2ss(i.OutputDoubleRegister(), i.InputDoubleRegister(0));
413 } else {
414 __ cvtsd2ss(i.OutputDoubleRegister(), i.InputOperand(0));
415 }
412 break; 416 break;
413 case kSSEFloat64ToInt32: 417 case kSSEFloat64ToInt32:
414 if (instr->InputAt(0)->IsDoubleRegister()) { 418 if (instr->InputAt(0)->IsDoubleRegister()) {
415 __ cvttsd2si(i.OutputRegister(), i.InputDoubleRegister(0)); 419 __ cvttsd2si(i.OutputRegister(), i.InputDoubleRegister(0));
416 } else { 420 } else {
417 __ cvttsd2si(i.OutputRegister(), i.InputOperand(0)); 421 __ cvttsd2si(i.OutputRegister(), i.InputOperand(0));
418 } 422 }
419 break; 423 break;
420 case kSSEFloat64ToUint32: 424 case kSSEFloat64ToUint32:
421 if (instr->InputAt(0)->IsDoubleRegister()) { 425 if (instr->InputAt(0)->IsDoubleRegister()) {
(...skipping 567 matching lines...) Expand 10 before | Expand all | Expand 10 after
989 } 993 }
990 } 994 }
991 MarkLazyDeoptSite(); 995 MarkLazyDeoptSite();
992 } 996 }
993 997
994 #undef __ 998 #undef __
995 999
996 } // namespace internal 1000 } // namespace internal
997 } // namespace compiler 1001 } // namespace compiler
998 } // namespace v8 1002 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/ia32/instruction-selector-ia32.cc ('k') | src/compiler/x64/instruction-selector-x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698