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

Side by Side Diff: src/objects-inl.h

Issue 911363002: Revert of new classes: implement new.target passing to superclass constructor. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 10 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
« no previous file with comments | « src/objects.h ('k') | src/runtime/runtime-classes.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 // Review notes: 5 // Review notes:
6 // 6 //
7 // - The use of macros in these inline functions may seem superfluous 7 // - The use of macros in these inline functions may seem superfluous
8 // but it is absolutely needed to make sure gcc generates optimal 8 // but it is absolutely needed to make sure gcc generates optimal
9 // code. gcc is not happy when attempting to inline too deep. 9 // code. gcc is not happy when attempting to inline too deep.
10 // 10 //
(...skipping 5700 matching lines...) Expand 10 before | Expand all | Expand 10 after
5711 BOOL_ACCESSORS(SharedFunctionInfo, 5711 BOOL_ACCESSORS(SharedFunctionInfo,
5712 compiler_hints, 5712 compiler_hints,
5713 has_duplicate_parameters, 5713 has_duplicate_parameters,
5714 kHasDuplicateParameters) 5714 kHasDuplicateParameters)
5715 BOOL_ACCESSORS(SharedFunctionInfo, compiler_hints, asm_function, kIsAsmFunction) 5715 BOOL_ACCESSORS(SharedFunctionInfo, compiler_hints, asm_function, kIsAsmFunction)
5716 BOOL_ACCESSORS(SharedFunctionInfo, compiler_hints, deserialized, kDeserialized) 5716 BOOL_ACCESSORS(SharedFunctionInfo, compiler_hints, deserialized, kDeserialized)
5717 5717
5718 5718
5719 #if V8_HOST_ARCH_32_BIT 5719 #if V8_HOST_ARCH_32_BIT
5720 SMI_ACCESSORS(SharedFunctionInfo, length, kLengthOffset) 5720 SMI_ACCESSORS(SharedFunctionInfo, length, kLengthOffset)
5721 SMI_ACCESSORS(SharedFunctionInfo, internal_formal_parameter_count, 5721 SMI_ACCESSORS(SharedFunctionInfo, formal_parameter_count,
5722 kFormalParameterCountOffset) 5722 kFormalParameterCountOffset)
5723 SMI_ACCESSORS(SharedFunctionInfo, expected_nof_properties, 5723 SMI_ACCESSORS(SharedFunctionInfo, expected_nof_properties,
5724 kExpectedNofPropertiesOffset) 5724 kExpectedNofPropertiesOffset)
5725 SMI_ACCESSORS(SharedFunctionInfo, num_literals, kNumLiteralsOffset) 5725 SMI_ACCESSORS(SharedFunctionInfo, num_literals, kNumLiteralsOffset)
5726 SMI_ACCESSORS(SharedFunctionInfo, start_position_and_type, 5726 SMI_ACCESSORS(SharedFunctionInfo, start_position_and_type,
5727 kStartPositionAndTypeOffset) 5727 kStartPositionAndTypeOffset)
5728 SMI_ACCESSORS(SharedFunctionInfo, end_position, kEndPositionOffset) 5728 SMI_ACCESSORS(SharedFunctionInfo, end_position, kEndPositionOffset)
5729 SMI_ACCESSORS(SharedFunctionInfo, function_token_position, 5729 SMI_ACCESSORS(SharedFunctionInfo, function_token_position,
5730 kFunctionTokenPositionOffset) 5730 kFunctionTokenPositionOffset)
5731 SMI_ACCESSORS(SharedFunctionInfo, compiler_hints, 5731 SMI_ACCESSORS(SharedFunctionInfo, compiler_hints,
(...skipping 27 matching lines...) Expand all
5759 DCHECK((value & 0xC0000000) == 0xC0000000 || (value & 0xC0000000) == 0x0); \ 5759 DCHECK((value & 0xC0000000) == 0xC0000000 || (value & 0xC0000000) == 0x0); \
5760 WRITE_INT_FIELD(this, offset, (value << 1) & ~kHeapObjectTag); \ 5760 WRITE_INT_FIELD(this, offset, (value << 1) & ~kHeapObjectTag); \
5761 } 5761 }
5762 5762
5763 #define PSEUDO_SMI_ACCESSORS_HI(holder, name, offset) \ 5763 #define PSEUDO_SMI_ACCESSORS_HI(holder, name, offset) \
5764 STATIC_ASSERT(holder::offset % kPointerSize == PSEUDO_SMI_HI_ALIGN); \ 5764 STATIC_ASSERT(holder::offset % kPointerSize == PSEUDO_SMI_HI_ALIGN); \
5765 INT_ACCESSORS(holder, name, offset) 5765 INT_ACCESSORS(holder, name, offset)
5766 5766
5767 5767
5768 PSEUDO_SMI_ACCESSORS_LO(SharedFunctionInfo, length, kLengthOffset) 5768 PSEUDO_SMI_ACCESSORS_LO(SharedFunctionInfo, length, kLengthOffset)
5769 PSEUDO_SMI_ACCESSORS_HI(SharedFunctionInfo, internal_formal_parameter_count, 5769 PSEUDO_SMI_ACCESSORS_HI(SharedFunctionInfo,
5770 formal_parameter_count,
5770 kFormalParameterCountOffset) 5771 kFormalParameterCountOffset)
5771 5772
5772 PSEUDO_SMI_ACCESSORS_LO(SharedFunctionInfo, 5773 PSEUDO_SMI_ACCESSORS_LO(SharedFunctionInfo,
5773 expected_nof_properties, 5774 expected_nof_properties,
5774 kExpectedNofPropertiesOffset) 5775 kExpectedNofPropertiesOffset)
5775 PSEUDO_SMI_ACCESSORS_HI(SharedFunctionInfo, num_literals, kNumLiteralsOffset) 5776 PSEUDO_SMI_ACCESSORS_HI(SharedFunctionInfo, num_literals, kNumLiteralsOffset)
5776 5777
5777 PSEUDO_SMI_ACCESSORS_LO(SharedFunctionInfo, end_position, kEndPositionOffset) 5778 PSEUDO_SMI_ACCESSORS_LO(SharedFunctionInfo, end_position, kEndPositionOffset)
5778 PSEUDO_SMI_ACCESSORS_HI(SharedFunctionInfo, 5779 PSEUDO_SMI_ACCESSORS_HI(SharedFunctionInfo,
5779 start_position_and_type, 5780 start_position_and_type,
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after
5891 return ExternalOneByteString::cast(src)->resource() != NULL; 5892 return ExternalOneByteString::cast(src)->resource() != NULL;
5892 } else if (src_str->IsTwoByteRepresentation()) { 5893 } else if (src_str->IsTwoByteRepresentation()) {
5893 return ExternalTwoByteString::cast(src)->resource() != NULL; 5894 return ExternalTwoByteString::cast(src)->resource() != NULL;
5894 } 5895 }
5895 return true; 5896 return true;
5896 } 5897 }
5897 5898
5898 5899
5899 void SharedFunctionInfo::DontAdaptArguments() { 5900 void SharedFunctionInfo::DontAdaptArguments() {
5900 DCHECK(code()->kind() == Code::BUILTIN); 5901 DCHECK(code()->kind() == Code::BUILTIN);
5901 set_internal_formal_parameter_count(kDontAdaptArgumentsSentinel); 5902 set_formal_parameter_count(kDontAdaptArgumentsSentinel);
5902 } 5903 }
5903 5904
5904 5905
5905 int SharedFunctionInfo::start_position() const { 5906 int SharedFunctionInfo::start_position() const {
5906 return start_position_and_type() >> kStartPositionShift; 5907 return start_position_and_type() >> kStartPositionShift;
5907 } 5908 }
5908 5909
5909 5910
5910 void SharedFunctionInfo::set_start_position(int start_position) { 5911 void SharedFunctionInfo::set_start_position(int start_position) {
5911 set_start_position_and_type((start_position << kStartPositionShift) 5912 set_start_position_and_type((start_position << kStartPositionShift)
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
6072 6073
6073 6074
6074 bool JSFunction::IsFromExtensionScript() { 6075 bool JSFunction::IsFromExtensionScript() {
6075 Object* script = shared()->script(); 6076 Object* script = shared()->script();
6076 return script->IsScript() && 6077 return script->IsScript() &&
6077 Script::cast(script)->type()->value() == Script::TYPE_EXTENSION; 6078 Script::cast(script)->type()->value() == Script::TYPE_EXTENSION;
6078 } 6079 }
6079 6080
6080 6081
6081 bool JSFunction::NeedsArgumentsAdaption() { 6082 bool JSFunction::NeedsArgumentsAdaption() {
6082 return shared()->internal_formal_parameter_count() != 6083 return shared()->formal_parameter_count() !=
6083 SharedFunctionInfo::kDontAdaptArgumentsSentinel; 6084 SharedFunctionInfo::kDontAdaptArgumentsSentinel;
6084 } 6085 }
6085 6086
6086 6087
6087 bool JSFunction::IsOptimized() { 6088 bool JSFunction::IsOptimized() {
6088 return code()->kind() == Code::OPTIMIZED_FUNCTION; 6089 return code()->kind() == Code::OPTIMIZED_FUNCTION;
6089 } 6090 }
6090 6091
6091 6092
6092 bool JSFunction::IsOptimizable() { 6093 bool JSFunction::IsOptimizable() {
6093 return code()->kind() == Code::FUNCTION && code()->optimizable(); 6094 return code()->kind() == Code::FUNCTION && code()->optimizable();
(...skipping 1528 matching lines...) Expand 10 before | Expand all | Expand 10 after
7622 #undef READ_SHORT_FIELD 7623 #undef READ_SHORT_FIELD
7623 #undef WRITE_SHORT_FIELD 7624 #undef WRITE_SHORT_FIELD
7624 #undef READ_BYTE_FIELD 7625 #undef READ_BYTE_FIELD
7625 #undef WRITE_BYTE_FIELD 7626 #undef WRITE_BYTE_FIELD
7626 #undef NOBARRIER_READ_BYTE_FIELD 7627 #undef NOBARRIER_READ_BYTE_FIELD
7627 #undef NOBARRIER_WRITE_BYTE_FIELD 7628 #undef NOBARRIER_WRITE_BYTE_FIELD
7628 7629
7629 } } // namespace v8::internal 7630 } } // namespace v8::internal
7630 7631
7631 #endif // V8_OBJECTS_INL_H_ 7632 #endif // V8_OBJECTS_INL_H_
OLDNEW
« no previous file with comments | « src/objects.h ('k') | src/runtime/runtime-classes.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698