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 "src/isolate.h" | 5 #include "src/isolate.h" |
6 | 6 |
7 #include <stdlib.h> | 7 #include <stdlib.h> |
8 | 8 |
9 #include <fstream> // NOLINT(readability/streams) | 9 #include <fstream> // NOLINT(readability/streams) |
10 #include <sstream> | 10 #include <sstream> |
(...skipping 2800 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2811 } | 2811 } |
2812 | 2812 |
2813 void Isolate::InvalidateArraySpeciesProtector() { | 2813 void Isolate::InvalidateArraySpeciesProtector() { |
2814 DCHECK(factory()->species_protector()->value()->IsSmi()); | 2814 DCHECK(factory()->species_protector()->value()->IsSmi()); |
2815 DCHECK(IsArraySpeciesLookupChainIntact()); | 2815 DCHECK(IsArraySpeciesLookupChainIntact()); |
2816 factory()->species_protector()->set_value( | 2816 factory()->species_protector()->set_value( |
2817 Smi::FromInt(kArrayProtectorInvalid)); | 2817 Smi::FromInt(kArrayProtectorInvalid)); |
2818 DCHECK(!IsArraySpeciesLookupChainIntact()); | 2818 DCHECK(!IsArraySpeciesLookupChainIntact()); |
2819 } | 2819 } |
2820 | 2820 |
2821 void Isolate::InvalidateStringLengthOverflowProtector() { | |
2822 DCHECK(factory()->string_length_protector()->value()->IsSmi()); | |
2823 DCHECK(IsStringLengthOverflowIntact()); | |
2824 PropertyCell::SetValueWithInvalidation( | |
2825 factory()->string_length_protector(), | |
2826 handle(Smi::FromInt(kArrayProtectorInvalid), this)); | |
2827 DCHECK(!IsStringLengthOverflowIntact()); | |
2828 } | |
2829 | |
2830 bool Isolate::IsAnyInitialArrayPrototype(Handle<JSArray> array) { | 2821 bool Isolate::IsAnyInitialArrayPrototype(Handle<JSArray> array) { |
2831 DisallowHeapAllocation no_gc; | 2822 DisallowHeapAllocation no_gc; |
2832 return IsInAnyContext(*array, Context::INITIAL_ARRAY_PROTOTYPE_INDEX); | 2823 return IsInAnyContext(*array, Context::INITIAL_ARRAY_PROTOTYPE_INDEX); |
2833 } | 2824 } |
2834 | 2825 |
2835 | 2826 |
2836 CallInterfaceDescriptorData* Isolate::call_descriptor_data(int index) { | 2827 CallInterfaceDescriptorData* Isolate::call_descriptor_data(int index) { |
2837 DCHECK(0 <= index && index < CallDescriptors::NUMBER_OF_DESCRIPTORS); | 2828 DCHECK(0 <= index && index < CallDescriptors::NUMBER_OF_DESCRIPTORS); |
2838 return &call_descriptor_data_[index]; | 2829 return &call_descriptor_data_[index]; |
2839 } | 2830 } |
(...skipping 377 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3217 // Then check whether this scope intercepts. | 3208 // Then check whether this scope intercepts. |
3218 if ((flag & intercept_mask_)) { | 3209 if ((flag & intercept_mask_)) { |
3219 intercepted_flags_ |= flag; | 3210 intercepted_flags_ |= flag; |
3220 return true; | 3211 return true; |
3221 } | 3212 } |
3222 return false; | 3213 return false; |
3223 } | 3214 } |
3224 | 3215 |
3225 } // namespace internal | 3216 } // namespace internal |
3226 } // namespace v8 | 3217 } // namespace v8 |
OLD | NEW |