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/code-stubs.h" | 5 #include "src/code-stubs.h" |
6 | 6 |
7 #include <sstream> | 7 #include <sstream> |
8 | 8 |
9 #include "src/bootstrapper.h" | 9 #include "src/bootstrapper.h" |
10 #include "src/code-factory.h" | 10 #include "src/code-factory.h" |
(...skipping 3932 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3943 CodeStubAssembler* assembler) const { | 3943 CodeStubAssembler* assembler) const { |
3944 typedef compiler::Node Node; | 3944 typedef compiler::Node Node; |
3945 Node* receiver = assembler->Parameter(0); | 3945 Node* receiver = assembler->Parameter(0); |
3946 Node* name = assembler->Parameter(1); | 3946 Node* name = assembler->Parameter(1); |
3947 Node* value = assembler->Parameter(2); | 3947 Node* value = assembler->Parameter(2); |
3948 Node* context = assembler->Parameter(3); | 3948 Node* context = assembler->Parameter(3); |
3949 assembler->TailCallRuntime(Runtime::kStorePropertyWithInterceptor, context, | 3949 assembler->TailCallRuntime(Runtime::kStorePropertyWithInterceptor, context, |
3950 receiver, name, value); | 3950 receiver, name, value); |
3951 } | 3951 } |
3952 | 3952 |
| 3953 void LoadICMissStub::GenerateAssembly(CodeStubAssembler* assembler) const { |
| 3954 typedef compiler::Node Node; |
| 3955 |
| 3956 Node* receiver = assembler->Parameter(0); |
| 3957 Node* name = assembler->Parameter(1); |
| 3958 Node* slot = assembler->Parameter(2); |
| 3959 Node* vector = assembler->Parameter(3); |
| 3960 Node* context = assembler->Parameter(4); |
| 3961 |
| 3962 assembler->TailCallRuntime(Runtime::kLoadIC_Miss, context, receiver, name, |
| 3963 slot, vector); |
| 3964 } |
| 3965 |
| 3966 void LoadICSlowStub::GenerateAssembly(CodeStubAssembler* assembler) const { |
| 3967 typedef compiler::Node Node; |
| 3968 |
| 3969 Node* receiver = assembler->Parameter(0); |
| 3970 Node* name = assembler->Parameter(1); |
| 3971 // Node* slot = assembler->Parameter(2); |
| 3972 // Node* vector = assembler->Parameter(3); |
| 3973 Node* context = assembler->Parameter(4); |
| 3974 |
| 3975 assembler->TailCallRuntime(Runtime::kGetProperty, context, receiver, name); |
| 3976 } |
| 3977 |
3953 void LoadIndexedInterceptorStub::GenerateAssembly( | 3978 void LoadIndexedInterceptorStub::GenerateAssembly( |
3954 CodeStubAssembler* assembler) const { | 3979 CodeStubAssembler* assembler) const { |
3955 typedef compiler::Node Node; | 3980 typedef compiler::Node Node; |
3956 typedef CodeStubAssembler::Label Label; | 3981 typedef CodeStubAssembler::Label Label; |
3957 Node* receiver = assembler->Parameter(0); | 3982 Node* receiver = assembler->Parameter(0); |
3958 Node* key = assembler->Parameter(1); | 3983 Node* key = assembler->Parameter(1); |
3959 Node* slot = assembler->Parameter(2); | 3984 Node* slot = assembler->Parameter(2); |
3960 Node* vector = assembler->Parameter(3); | 3985 Node* vector = assembler->Parameter(3); |
3961 Node* context = assembler->Parameter(4); | 3986 Node* context = assembler->Parameter(4); |
3962 | 3987 |
(...skipping 814 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4777 if (type->Is(Type::UntaggedPointer())) { | 4802 if (type->Is(Type::UntaggedPointer())) { |
4778 return Representation::External(); | 4803 return Representation::External(); |
4779 } | 4804 } |
4780 | 4805 |
4781 DCHECK(!type->Is(Type::Untagged())); | 4806 DCHECK(!type->Is(Type::Untagged())); |
4782 return Representation::Tagged(); | 4807 return Representation::Tagged(); |
4783 } | 4808 } |
4784 | 4809 |
4785 } // namespace internal | 4810 } // namespace internal |
4786 } // namespace v8 | 4811 } // namespace v8 |
OLD | NEW |