| Index: src/objects.h
|
| diff --git a/src/objects.h b/src/objects.h
|
| index f159b662ca613f35283e00b07e7eea9226ebabcf..bf0d240266fecda50c338350c15c5d72a820b959 100644
|
| --- a/src/objects.h
|
| +++ b/src/objects.h
|
| @@ -131,7 +131,6 @@
|
| // - Oddball
|
| // - Foreign
|
| // - SharedFunctionInfo
|
| -// - OptimizedCodeEntry
|
| // - Struct
|
| // - Box
|
| // - DeclaredAccessorDescriptor
|
| @@ -407,7 +406,6 @@ const int kStubMinorKeyBits = kBitsPerInt - kSmiTagSize - kStubMajorKeyBits;
|
| V(FIXED_ARRAY_TYPE) \
|
| V(FIXED_DOUBLE_ARRAY_TYPE) \
|
| V(SHARED_FUNCTION_INFO_TYPE) \
|
| - V(OPTIMIZED_CODE_ENTRY_TYPE) \
|
| \
|
| V(JS_MESSAGE_OBJECT_TYPE) \
|
| \
|
| @@ -758,7 +756,6 @@ enum InstanceType {
|
|
|
| FIXED_ARRAY_TYPE,
|
| SHARED_FUNCTION_INFO_TYPE,
|
| - OPTIMIZED_CODE_ENTRY_TYPE,
|
|
|
| JS_MESSAGE_OBJECT_TYPE,
|
|
|
| @@ -1020,7 +1017,6 @@ class MaybeObject BASE_EMBEDDED {
|
| V(Code) \
|
| V(Oddball) \
|
| V(SharedFunctionInfo) \
|
| - V(OptimizedCodeEntry) \
|
| V(JSValue) \
|
| V(JSDate) \
|
| V(JSMessageObject) \
|
| @@ -6802,76 +6798,6 @@ class SharedFunctionInfo: public HeapObject {
|
| };
|
|
|
|
|
| -// An optimized code entry represents an association between the native
|
| -// context, a function, optimized code, and the literals. The entries
|
| -// are linked into two lists for efficient lookup: by native context
|
| -// (linked through next_by_native_context), or by shared function
|
| -// info (linked through next_by_shared_info).
|
| -// The references to the native context, function, and code are weak,
|
| -// in order not to leak native contexts or functions through
|
| -// SharedFunctionInfo. This means an entry can become "dead" through GC.
|
| -// Entries are removed lazily as each list is traversed.
|
| -class OptimizedCodeEntry: public HeapObject {
|
| - public:
|
| - // [native_context]: The native context of this entry. (WEAK)
|
| - DECL_ACCESSORS(native_context, Context)
|
| -
|
| - // [function]: The JSFunction of this entry. (WEAK)
|
| - DECL_ACCESSORS(function, JSFunction)
|
| -
|
| - // [code]: The optimized code of this entry. (WEAK)
|
| - DECL_ACCESSORS(code, Code)
|
| -
|
| - // [literals]: Array of literals for this entry.
|
| - DECL_ACCESSORS(literals, FixedArray)
|
| -
|
| - // [next_by_shared_info]: The next link in the list, when traversing
|
| - // starting with a SharedFunctionInfo. (NULL if none).
|
| - DECL_ACCESSORS(next_by_shared_info, OptimizedCodeEntry)
|
| -
|
| - // [next_by_native_context]: The next link in the list, when traversing
|
| - // starting with a native context. (NULL if none)
|
| - DECL_ACCESSORS(next_by_native_context, OptimizedCodeEntry)
|
| -
|
| - // Casting.
|
| - static inline OptimizedCodeEntry* cast(Object* obj);
|
| -
|
| - DECLARE_PRINTER(OptimizedCodeEntry)
|
| - DECLARE_VERIFIER(OptimizedCodeEntry)
|
| -
|
| - // Layout description.
|
| - static const int kNativeContextOffset = JSObject::kHeaderSize;
|
| - static const int kFunctionOffset = kNativeContextOffset + kPointerSize;
|
| - static const int kCodeOffset = kFunctionOffset + kPointerSize;
|
| - static const int kLiteralsOffset = kCodeOffset + kPointerSize;
|
| - static const int kNextBySharedInfoOffset =
|
| - kLiteralsOffset + kPointerSize;
|
| - static const int kNextByNativeContextOffset =
|
| - kNextBySharedInfoOffset + kPointerSize;
|
| - static const int kCacheableOffset = kNextByNativeContextOffset + kPointerSize;
|
| - static const int kSize = kCacheableOffset + kIntSize;
|
| - static const int kAlignedSize = OBJECT_POINTER_ALIGN(kSize);
|
| -
|
| - typedef FixedBodyDescriptor<kLiteralsOffset,
|
| - kNextByNativeContextOffset + kPointerSize,
|
| - kSize> BodyDescriptor;
|
| -
|
| - // Kills an entry, nulling out its references to native context, function,
|
| - // code, and literals.
|
| - void Kill();
|
| - inline bool cacheable();
|
| - inline void set_cacheable(bool val);
|
| -
|
| - private:
|
| - // Used internally during traversal to skip dead entries.
|
| - inline bool IsDead() {
|
| - return function() == NULL || code() == NULL;
|
| - }
|
| -
|
| - DISALLOW_IMPLICIT_CONSTRUCTORS(OptimizedCodeEntry);
|
| -};
|
| -
|
| -
|
| class JSGeneratorObject: public JSObject {
|
| public:
|
| // [function]: The function corresponding to this generator object.
|
|
|