OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 <sstream> | 5 #include <sstream> |
6 | 6 |
7 #include "src/v8.h" | 7 #include "src/v8.h" |
8 | 8 |
9 #include "src/arm/lithium-codegen-arm.h" | 9 #include "src/arm/lithium-codegen-arm.h" |
10 #include "src/hydrogen-osr.h" | 10 #include "src/hydrogen-osr.h" |
(...skipping 237 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
248 | 248 |
249 | 249 |
250 void LInnerAllocatedObject::PrintDataTo(StringStream* stream) { | 250 void LInnerAllocatedObject::PrintDataTo(StringStream* stream) { |
251 stream->Add(" = "); | 251 stream->Add(" = "); |
252 base_object()->PrintTo(stream); | 252 base_object()->PrintTo(stream); |
253 stream->Add(" + "); | 253 stream->Add(" + "); |
254 offset()->PrintTo(stream); | 254 offset()->PrintTo(stream); |
255 } | 255 } |
256 | 256 |
257 | 257 |
258 void LCallFunction::PrintDataTo(StringStream* stream) { | |
259 context()->PrintTo(stream); | |
260 stream->Add(" "); | |
261 function()->PrintTo(stream); | |
262 if (hydrogen()->HasVectorAndSlot()) { | |
263 stream->Add(" (type-feedback-vector "); | |
264 temp_vector()->PrintTo(stream); | |
265 stream->Add(" "); | |
266 temp_slot()->PrintTo(stream); | |
267 stream->Add(")"); | |
268 } | |
269 } | |
270 | |
271 | |
272 void LCallJSFunction::PrintDataTo(StringStream* stream) { | 258 void LCallJSFunction::PrintDataTo(StringStream* stream) { |
273 stream->Add("= "); | 259 stream->Add("= "); |
274 function()->PrintTo(stream); | 260 function()->PrintTo(stream); |
275 stream->Add("#%d / ", arity()); | 261 stream->Add("#%d / ", arity()); |
276 } | 262 } |
277 | 263 |
278 | 264 |
279 void LCallWithDescriptor::PrintDataTo(StringStream* stream) { | 265 void LCallWithDescriptor::PrintDataTo(StringStream* stream) { |
280 for (int i = 0; i < InputCount(); i++) { | 266 for (int i = 0; i < InputCount(); i++) { |
281 InputAt(i)->PrintTo(stream); | 267 InputAt(i)->PrintTo(stream); |
(...skipping 968 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1250 LOperand* context = UseFixed(instr->context(), cp); | 1236 LOperand* context = UseFixed(instr->context(), cp); |
1251 LOperand* constructor = UseFixed(instr->constructor(), r1); | 1237 LOperand* constructor = UseFixed(instr->constructor(), r1); |
1252 LCallNewArray* result = new(zone()) LCallNewArray(context, constructor); | 1238 LCallNewArray* result = new(zone()) LCallNewArray(context, constructor); |
1253 return MarkAsCall(DefineFixed(result, r0), instr); | 1239 return MarkAsCall(DefineFixed(result, r0), instr); |
1254 } | 1240 } |
1255 | 1241 |
1256 | 1242 |
1257 LInstruction* LChunkBuilder::DoCallFunction(HCallFunction* instr) { | 1243 LInstruction* LChunkBuilder::DoCallFunction(HCallFunction* instr) { |
1258 LOperand* context = UseFixed(instr->context(), cp); | 1244 LOperand* context = UseFixed(instr->context(), cp); |
1259 LOperand* function = UseFixed(instr->function(), r1); | 1245 LOperand* function = UseFixed(instr->function(), r1); |
1260 LOperand* slot = NULL; | 1246 LCallFunction* call = new(zone()) LCallFunction(context, function); |
1261 LOperand* vector = NULL; | |
1262 if (instr->HasVectorAndSlot()) { | |
1263 slot = FixedTemp(r3); | |
1264 vector = FixedTemp(r2); | |
1265 } | |
1266 | |
1267 LCallFunction* call = | |
1268 new (zone()) LCallFunction(context, function, slot, vector); | |
1269 return MarkAsCall(DefineFixed(call, r0), instr); | 1247 return MarkAsCall(DefineFixed(call, r0), instr); |
1270 } | 1248 } |
1271 | 1249 |
1272 | 1250 |
1273 LInstruction* LChunkBuilder::DoCallRuntime(HCallRuntime* instr) { | 1251 LInstruction* LChunkBuilder::DoCallRuntime(HCallRuntime* instr) { |
1274 LOperand* context = UseFixed(instr->context(), cp); | 1252 LOperand* context = UseFixed(instr->context(), cp); |
1275 return MarkAsCall(DefineFixed(new(zone()) LCallRuntime(context), r0), instr); | 1253 return MarkAsCall(DefineFixed(new(zone()) LCallRuntime(context), r0), instr); |
1276 } | 1254 } |
1277 | 1255 |
1278 | 1256 |
(...skipping 1394 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2673 LInstruction* LChunkBuilder::DoAllocateBlockContext( | 2651 LInstruction* LChunkBuilder::DoAllocateBlockContext( |
2674 HAllocateBlockContext* instr) { | 2652 HAllocateBlockContext* instr) { |
2675 LOperand* context = UseFixed(instr->context(), cp); | 2653 LOperand* context = UseFixed(instr->context(), cp); |
2676 LOperand* function = UseRegisterAtStart(instr->function()); | 2654 LOperand* function = UseRegisterAtStart(instr->function()); |
2677 LAllocateBlockContext* result = | 2655 LAllocateBlockContext* result = |
2678 new(zone()) LAllocateBlockContext(context, function); | 2656 new(zone()) LAllocateBlockContext(context, function); |
2679 return MarkAsCall(DefineFixed(result, cp), instr); | 2657 return MarkAsCall(DefineFixed(result, cp), instr); |
2680 } | 2658 } |
2681 | 2659 |
2682 } } // namespace v8::internal | 2660 } } // namespace v8::internal |
OLD | NEW |