OLD | NEW |
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/interpreter-assembler.h" | 5 #include "src/compiler/interpreter-assembler.h" |
6 | 6 |
7 #include <ostream> | 7 #include <ostream> |
8 | 8 |
9 #include "src/code-factory.h" | 9 #include "src/code-factory.h" |
10 #include "src/compiler/graph.h" | 10 #include "src/compiler/graph.h" |
(...skipping 417 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
428 Int32Constant(Context::kHeaderSize - kHeapObjectTag)); | 428 Int32Constant(Context::kHeaderSize - kHeapObjectTag)); |
429 return raw_assembler_->Store(MachineRepresentation::kTagged, context, offset, | 429 return raw_assembler_->Store(MachineRepresentation::kTagged, context, offset, |
430 value, kFullWriteBarrier); | 430 value, kFullWriteBarrier); |
431 } | 431 } |
432 | 432 |
433 | 433 |
434 Node* InterpreterAssembler::LoadTypeFeedbackVector() { | 434 Node* InterpreterAssembler::LoadTypeFeedbackVector() { |
435 Node* function = raw_assembler_->Load( | 435 Node* function = raw_assembler_->Load( |
436 MachineType::AnyTagged(), RegisterFileRawPointer(), | 436 MachineType::AnyTagged(), RegisterFileRawPointer(), |
437 IntPtrConstant(InterpreterFrameConstants::kFunctionFromRegisterPointer)); | 437 IntPtrConstant(InterpreterFrameConstants::kFunctionFromRegisterPointer)); |
438 Node* shared_info = | 438 Node* literals = LoadObjectField(function, JSFunction::kLiteralsOffset); |
439 LoadObjectField(function, JSFunction::kSharedFunctionInfoOffset); | |
440 Node* vector = | 439 Node* vector = |
441 LoadObjectField(shared_info, SharedFunctionInfo::kFeedbackVectorOffset); | 440 LoadObjectField(literals, LiteralsArray::kFeedbackVectorOffset); |
442 return vector; | 441 return vector; |
443 } | 442 } |
444 | 443 |
445 | 444 |
446 Node* InterpreterAssembler::Projection(int index, Node* node) { | 445 Node* InterpreterAssembler::Projection(int index, Node* node) { |
447 return raw_assembler_->Projection(index, node); | 446 return raw_assembler_->Projection(index, node); |
448 } | 447 } |
449 | 448 |
450 | 449 |
451 Node* InterpreterAssembler::CallConstruct(Node* new_target, Node* constructor, | 450 Node* InterpreterAssembler::CallConstruct(Node* new_target, Node* constructor, |
(...skipping 318 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
770 return raw_assembler_->call_descriptor(); | 769 return raw_assembler_->call_descriptor(); |
771 } | 770 } |
772 | 771 |
773 | 772 |
774 Zone* InterpreterAssembler::zone() { return raw_assembler_->zone(); } | 773 Zone* InterpreterAssembler::zone() { return raw_assembler_->zone(); } |
775 | 774 |
776 | 775 |
777 } // namespace compiler | 776 } // namespace compiler |
778 } // namespace internal | 777 } // namespace internal |
779 } // namespace v8 | 778 } // namespace v8 |
OLD | NEW |