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

Side by Side Diff: src/compiler/ia32/instruction-scheduler-ia32.cc

Issue 1534593004: [turbofan] Pass type information of arguments to EmitPrepareArguments. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Handle float32 and float64 differently. Created 5 years 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
OLDNEW
1 // Copyright 2015 the V8 project authors. All rights reserved. 1 // Copyright 2015 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/instruction-scheduler.h" 5 #include "src/compiler/instruction-scheduler.h"
6 6
7 namespace v8 { 7 namespace v8 {
8 namespace internal { 8 namespace internal {
9 namespace compiler { 9 namespace compiler {
10 10
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
101 case kIA32Movl: 101 case kIA32Movl:
102 case kIA32Movss: 102 case kIA32Movss:
103 case kIA32Movsd: 103 case kIA32Movsd:
104 // Moves are used for memory load/store operations. 104 // Moves are used for memory load/store operations.
105 return instr->HasOutput() ? kIsLoadOperation : kHasSideEffect; 105 return instr->HasOutput() ? kIsLoadOperation : kHasSideEffect;
106 106
107 case kIA32StackCheck: 107 case kIA32StackCheck:
108 return kIsLoadOperation; 108 return kIsLoadOperation;
109 109
110 case kIA32Push: 110 case kIA32Push:
111 case kIA32PushFloat32:
112 case kIA32PushFloat64:
111 case kIA32Poke: 113 case kIA32Poke:
112 return kHasSideEffect; 114 return kHasSideEffect;
113 115
114 #define CASE(Name) case k##Name: 116 #define CASE(Name) case k##Name:
115 COMMON_ARCH_OPCODE_LIST(CASE) 117 COMMON_ARCH_OPCODE_LIST(CASE)
116 #undef CASE 118 #undef CASE
117 // Already covered in architecture independent code. 119 // Already covered in architecture independent code.
118 UNREACHABLE(); 120 UNREACHABLE();
119 } 121 }
120 122
121 UNREACHABLE(); 123 UNREACHABLE();
122 return kNoOpcodeFlags; 124 return kNoOpcodeFlags;
123 } 125 }
124 126
125 127
126 int InstructionScheduler::GetInstructionLatency(const Instruction* instr) { 128 int InstructionScheduler::GetInstructionLatency(const Instruction* instr) {
127 // TODO(all): Add instruction cost modeling. 129 // TODO(all): Add instruction cost modeling.
128 return 1; 130 return 1;
129 } 131 }
130 132
131 } // namespace compiler 133 } // namespace compiler
132 } // namespace internal 134 } // namespace internal
133 } // namespace v8 135 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/ia32/instruction-codes-ia32.h ('k') | src/compiler/ia32/instruction-selector-ia32.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698