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 #ifndef V8_CODE_STUBS_H_ | 5 #ifndef V8_CODE_STUBS_H_ |
6 #define V8_CODE_STUBS_H_ | 6 #define V8_CODE_STUBS_H_ |
7 | 7 |
8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
9 #include "src/assembler.h" | 9 #include "src/assembler.h" |
10 #include "src/code-stub-assembler.h" | 10 #include "src/code-stub-assembler.h" |
(...skipping 1368 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1379 }; | 1379 }; |
1380 | 1380 |
1381 | 1381 |
1382 // TODO(verwaest): Translate to hydrogen code stub. | 1382 // TODO(verwaest): Translate to hydrogen code stub. |
1383 class FunctionPrototypeStub : public PlatformCodeStub { | 1383 class FunctionPrototypeStub : public PlatformCodeStub { |
1384 public: | 1384 public: |
1385 explicit FunctionPrototypeStub(Isolate* isolate) | 1385 explicit FunctionPrototypeStub(Isolate* isolate) |
1386 : PlatformCodeStub(isolate) {} | 1386 : PlatformCodeStub(isolate) {} |
1387 | 1387 |
1388 Code::Kind GetCodeKind() const override { return Code::HANDLER; } | 1388 Code::Kind GetCodeKind() const override { return Code::HANDLER; } |
1389 ExtraICState GetExtraICState() const override { return Code::LOAD_IC; } | |
Jakob Kummerow
2016/07/12 12:55:49
Code::LOAD_IC is a Code::Kind, not an ExtraICState
Igor Sheludko
2016/07/12 13:06:54
This stub is a handler and handlers store the IC k
| |
1389 | 1390 |
1390 // TODO(mvstanton): only the receiver register is accessed. When this is | 1391 // TODO(mvstanton): only the receiver register is accessed. When this is |
1391 // translated to a hydrogen code stub, a new CallInterfaceDescriptor | 1392 // translated to a hydrogen code stub, a new CallInterfaceDescriptor |
1392 // should be created that just uses that register for more efficient code. | 1393 // should be created that just uses that register for more efficient code. |
1393 CallInterfaceDescriptor GetCallInterfaceDescriptor() const override { | 1394 CallInterfaceDescriptor GetCallInterfaceDescriptor() const override { |
1394 return LoadWithVectorDescriptor(isolate()); | 1395 return LoadWithVectorDescriptor(isolate()); |
1395 } | 1396 } |
1396 | 1397 |
1397 DEFINE_PLATFORM_CODE_STUB(FunctionPrototype, PlatformCodeStub); | 1398 DEFINE_PLATFORM_CODE_STUB(FunctionPrototype, PlatformCodeStub); |
1398 }; | 1399 }; |
(...skipping 1710 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
3109 #undef DEFINE_HYDROGEN_CODE_STUB | 3110 #undef DEFINE_HYDROGEN_CODE_STUB |
3110 #undef DEFINE_CODE_STUB | 3111 #undef DEFINE_CODE_STUB |
3111 #undef DEFINE_CODE_STUB_BASE | 3112 #undef DEFINE_CODE_STUB_BASE |
3112 | 3113 |
3113 extern Representation RepresentationFromType(Type* type); | 3114 extern Representation RepresentationFromType(Type* type); |
3114 | 3115 |
3115 } // namespace internal | 3116 } // namespace internal |
3116 } // namespace v8 | 3117 } // namespace v8 |
3117 | 3118 |
3118 #endif // V8_CODE_STUBS_H_ | 3119 #endif // V8_CODE_STUBS_H_ |
OLD | NEW |