| Index: src/code-stubs.h
|
| diff --git a/src/code-stubs.h b/src/code-stubs.h
|
| index d197c841b1187027a254ca6c8637e62d4992bcc3..709fdbf20f6be9509c07c4f6bb4774efad23fdba 100644
|
| --- a/src/code-stubs.h
|
| +++ b/src/code-stubs.h
|
| @@ -66,6 +66,7 @@ namespace internal {
|
| V(FastNewBlockContext) \
|
| V(FastCloneShallowArray) \
|
| V(FastCloneShallowObject) \
|
| + V(CreateAllocationSite) \
|
| V(ToBoolean) \
|
| V(ToNumber) \
|
| V(ArgumentsAccess) \
|
| @@ -620,6 +621,28 @@ class FastCloneShallowObjectStub : public HydrogenCodeStub {
|
| };
|
|
|
|
|
| +class CreateAllocationSiteStub : public HydrogenCodeStub {
|
| + public:
|
| + explicit CreateAllocationSiteStub() { }
|
| +
|
| + virtual Handle<Code> GenerateCode();
|
| +
|
| + virtual bool IsPregenerated() { return true; }
|
| +
|
| + static void GenerateAheadOfTime(Isolate* isolate);
|
| +
|
| + virtual void InitializeInterfaceDescriptor(
|
| + Isolate* isolate,
|
| + CodeStubInterfaceDescriptor* descriptor);
|
| +
|
| + private:
|
| + Major MajorKey() { return CreateAllocationSite; }
|
| + int NotMissMinorKey() { return 0; }
|
| +
|
| + DISALLOW_COPY_AND_ASSIGN(CreateAllocationSiteStub);
|
| +};
|
| +
|
| +
|
| class InstanceofStub: public PlatformCodeStub {
|
| public:
|
| enum Flags {
|
| @@ -1755,7 +1778,7 @@ class ArrayConstructorStubBase : public HydrogenCodeStub {
|
| // if there is a difference between the global allocation site policy
|
| // for an ElementsKind and the desired usage of the stub.
|
| ASSERT(override_mode != DISABLE_ALLOCATION_SITES ||
|
| - AllocationSiteInfo::GetMode(kind) == TRACK_ALLOCATION_SITE);
|
| + AllocationSite::GetMode(kind) == TRACK_ALLOCATION_SITE);
|
| bit_field_ = ElementsKindBits::encode(kind) |
|
| AllocationSiteOverrideModeBits::encode(override_mode) |
|
| ContextCheckModeBits::encode(context_mode);
|
|
|