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 #include "src/code-stub-assembler.h" | 5 #include "src/code-stub-assembler.h" |
6 #include "src/code-factory.h" | 6 #include "src/code-factory.h" |
7 #include "src/frames-inl.h" | 7 #include "src/frames-inl.h" |
8 #include "src/frames.h" | 8 #include "src/frames.h" |
9 #include "src/ic/stub-cache.h" | 9 #include "src/ic/stub-cache.h" |
10 | 10 |
(...skipping 2332 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2343 LoadFixedArrayElement(p->vector, p->slot, kPointerSize, SMI_PARAMETERS); | 2343 LoadFixedArrayElement(p->vector, p->slot, kPointerSize, SMI_PARAMETERS); |
2344 GotoIf(WordEqual(handler, LoadRoot(Heap::kuninitialized_symbolRootIndex)), | 2344 GotoIf(WordEqual(handler, LoadRoot(Heap::kuninitialized_symbolRootIndex)), |
2345 &miss); | 2345 &miss); |
2346 | 2346 |
2347 // In this case {handler} must be a Code object. | 2347 // In this case {handler} must be a Code object. |
2348 AssertInstanceType(handler, CODE_TYPE); | 2348 AssertInstanceType(handler, CODE_TYPE); |
2349 LoadWithVectorDescriptor descriptor(isolate()); | 2349 LoadWithVectorDescriptor descriptor(isolate()); |
2350 Node* native_context = LoadNativeContext(p->context); | 2350 Node* native_context = LoadNativeContext(p->context); |
2351 Node* receiver = LoadFixedArrayElement( | 2351 Node* receiver = LoadFixedArrayElement( |
2352 native_context, Int32Constant(Context::EXTENSION_INDEX)); | 2352 native_context, Int32Constant(Context::EXTENSION_INDEX)); |
2353 TailCallStub(descriptor, handler, p->context, receiver, p->name, p->slot, | 2353 Node* fake_name = IntPtrConstant(0); |
| 2354 TailCallStub(descriptor, handler, p->context, receiver, fake_name, p->slot, |
2354 p->vector); | 2355 p->vector); |
2355 } | 2356 } |
2356 Bind(&miss); | 2357 Bind(&miss); |
2357 { | 2358 { |
2358 TailCallRuntime(Runtime::kLoadGlobalIC_Miss, p->context, p->name, p->slot, | 2359 TailCallRuntime(Runtime::kLoadGlobalIC_Miss, p->context, p->slot, |
2359 p->vector); | 2360 p->vector); |
2360 } | 2361 } |
2361 } | 2362 } |
2362 | 2363 |
2363 } // namespace internal | 2364 } // namespace internal |
2364 } // namespace v8 | 2365 } // namespace v8 |
OLD | NEW |