| OLD | NEW |
| 1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 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 #ifndef V8_CODE_STUB_ASSEMBLER_H_ | 5 #ifndef V8_CODE_STUB_ASSEMBLER_H_ |
| 6 #define V8_CODE_STUB_ASSEMBLER_H_ | 6 #define V8_CODE_STUB_ASSEMBLER_H_ |
| 7 | 7 |
| 8 #include <functional> | 8 #include <functional> |
| 9 | 9 |
| 10 #include "src/compiler/code-assembler.h" | 10 #include "src/compiler/code-assembler.h" |
| (...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 305 | 305 |
| 306 compiler::Node* LoadJSArrayElementsMap(ElementsKind kind, | 306 compiler::Node* LoadJSArrayElementsMap(ElementsKind kind, |
| 307 compiler::Node* native_context); | 307 compiler::Node* native_context); |
| 308 | 308 |
| 309 // Store the floating point value of a HeapNumber. | 309 // Store the floating point value of a HeapNumber. |
| 310 compiler::Node* StoreHeapNumberValue(compiler::Node* object, | 310 compiler::Node* StoreHeapNumberValue(compiler::Node* object, |
| 311 compiler::Node* value); | 311 compiler::Node* value); |
| 312 // Store a field to an object on the heap. | 312 // Store a field to an object on the heap. |
| 313 compiler::Node* StoreObjectField( | 313 compiler::Node* StoreObjectField( |
| 314 compiler::Node* object, int offset, compiler::Node* value); | 314 compiler::Node* object, int offset, compiler::Node* value); |
| 315 compiler::Node* StoreObjectField(compiler::Node* object, |
| 316 compiler::Node* offset, |
| 317 compiler::Node* value); |
| 315 compiler::Node* StoreObjectFieldNoWriteBarrier( | 318 compiler::Node* StoreObjectFieldNoWriteBarrier( |
| 316 compiler::Node* object, int offset, compiler::Node* value, | 319 compiler::Node* object, int offset, compiler::Node* value, |
| 317 MachineRepresentation rep = MachineRepresentation::kTagged); | 320 MachineRepresentation rep = MachineRepresentation::kTagged); |
| 321 compiler::Node* StoreObjectFieldNoWriteBarrier( |
| 322 compiler::Node* object, compiler::Node* offset, compiler::Node* value, |
| 323 MachineRepresentation rep = MachineRepresentation::kTagged); |
| 318 // Store the Map of an HeapObject. | 324 // Store the Map of an HeapObject. |
| 319 compiler::Node* StoreMapNoWriteBarrier(compiler::Node* object, | 325 compiler::Node* StoreMapNoWriteBarrier(compiler::Node* object, |
| 320 compiler::Node* map); | 326 compiler::Node* map); |
| 321 compiler::Node* StoreObjectFieldRoot(compiler::Node* object, int offset, | 327 compiler::Node* StoreObjectFieldRoot(compiler::Node* object, int offset, |
| 322 Heap::RootListIndex root); | 328 Heap::RootListIndex root); |
| 323 // Store an array element to a FixedArray. | 329 // Store an array element to a FixedArray. |
| 324 compiler::Node* StoreFixedArrayElement( | 330 compiler::Node* StoreFixedArrayElement( |
| 325 compiler::Node* object, compiler::Node* index, compiler::Node* value, | 331 compiler::Node* object, compiler::Node* index, compiler::Node* value, |
| 326 WriteBarrierMode barrier_mode = UPDATE_WRITE_BARRIER, | 332 WriteBarrierMode barrier_mode = UPDATE_WRITE_BARRIER, |
| 327 ParameterMode parameter_mode = INTEGER_PARAMETERS); | 333 ParameterMode parameter_mode = INTEGER_PARAMETERS); |
| (...skipping 405 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 733 void ExtendPropertiesBackingStore(compiler::Node* object); | 739 void ExtendPropertiesBackingStore(compiler::Node* object); |
| 734 | 740 |
| 735 compiler::Node* PrepareValueForWrite(compiler::Node* value, | 741 compiler::Node* PrepareValueForWrite(compiler::Node* value, |
| 736 Representation representation, | 742 Representation representation, |
| 737 Label* bailout); | 743 Label* bailout); |
| 738 | 744 |
| 739 void StoreNamedField(compiler::Node* object, FieldIndex index, | 745 void StoreNamedField(compiler::Node* object, FieldIndex index, |
| 740 Representation representation, compiler::Node* value, | 746 Representation representation, compiler::Node* value, |
| 741 bool transition_to_field); | 747 bool transition_to_field); |
| 742 | 748 |
| 749 void StoreNamedField(compiler::Node* object, compiler::Node* offset, |
| 750 bool is_inobject, Representation representation, |
| 751 compiler::Node* value, bool transition_to_field); |
| 752 |
| 743 // Emits keyed sloppy arguments load. Returns either the loaded value. | 753 // Emits keyed sloppy arguments load. Returns either the loaded value. |
| 744 compiler::Node* LoadKeyedSloppyArguments(compiler::Node* receiver, | 754 compiler::Node* LoadKeyedSloppyArguments(compiler::Node* receiver, |
| 745 compiler::Node* key, | 755 compiler::Node* key, |
| 746 Label* bailout) { | 756 Label* bailout) { |
| 747 return EmitKeyedSloppyArguments(receiver, key, nullptr, bailout); | 757 return EmitKeyedSloppyArguments(receiver, key, nullptr, bailout); |
| 748 } | 758 } |
| 749 | 759 |
| 750 // Emits keyed sloppy arguments store. | 760 // Emits keyed sloppy arguments store. |
| 751 void StoreKeyedSloppyArguments(compiler::Node* receiver, compiler::Node* key, | 761 void StoreKeyedSloppyArguments(compiler::Node* receiver, compiler::Node* key, |
| 752 compiler::Node* value, Label* bailout) { | 762 compiler::Node* value, Label* bailout) { |
| (...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 883 Label* bailout); | 893 Label* bailout); |
| 884 | 894 |
| 885 static const int kElementLoopUnrollThreshold = 8; | 895 static const int kElementLoopUnrollThreshold = 8; |
| 886 }; | 896 }; |
| 887 | 897 |
| 888 DEFINE_OPERATORS_FOR_FLAGS(CodeStubAssembler::AllocationFlags); | 898 DEFINE_OPERATORS_FOR_FLAGS(CodeStubAssembler::AllocationFlags); |
| 889 | 899 |
| 890 } // namespace internal | 900 } // namespace internal |
| 891 } // namespace v8 | 901 } // namespace v8 |
| 892 #endif // V8_CODE_STUB_ASSEMBLER_H_ | 902 #endif // V8_CODE_STUB_ASSEMBLER_H_ |
| OLD | NEW |