| Index: src/code-stubs.h
|
| diff --git a/src/code-stubs.h b/src/code-stubs.h
|
| index 2ae4ba7085e37e1a10b3c0a73acd623034324ac5..09e55a9bffc2661fd49a37351785bf885aa27217 100644
|
| --- a/src/code-stubs.h
|
| +++ b/src/code-stubs.h
|
| @@ -1009,15 +1009,25 @@ class LoadConstantStub : public HandlerStub {
|
| };
|
|
|
|
|
| -class StringLengthStub: public HandlerStub {
|
| +class StringLengthStub : public CodeStub {
|
| public:
|
| - explicit StringLengthStub(Isolate* isolate) : HandlerStub(isolate) {}
|
| + explicit StringLengthStub(Isolate* isolate) : CodeStub(isolate) {}
|
|
|
| - protected:
|
| - Code::Kind kind() const OVERRIDE { return Code::LOAD_IC; }
|
| - Code::StubType GetStubType() const OVERRIDE { return Code::FAST; }
|
| + StringLengthStub(uint32_t key, Isolate* isolate) : CodeStub(key, isolate) {}
|
| +
|
| + CallInterfaceDescriptor GetCallInterfaceDescriptor() OVERRIDE {
|
| + return LoadDescriptor(isolate());
|
| + };
|
|
|
| - DEFINE_HANDLER_CODE_STUB(StringLength, HandlerStub);
|
| + Handle<Code> GenerateCode() OVERRIDE;
|
| +
|
| + Major MajorKey() const OVERRIDE { return StringLength; };
|
| + Code::Kind GetCodeKind() const OVERRIDE { return Code::HANDLER; }
|
| + InlineCacheState GetICState() const OVERRIDE { return MONOMORPHIC; }
|
| + ExtraICState GetExtraICState() const OVERRIDE { return Code::LOAD_IC; }
|
| +
|
| + private:
|
| + DISALLOW_COPY_AND_ASSIGN(StringLengthStub);
|
| };
|
|
|
|
|
|
|