Chromium Code Reviews| Index: src/objects.h |
| diff --git a/src/objects.h b/src/objects.h |
| index 68711769444ccd9bf9a095283815a572f5919cf3..0f941a7b8ed2f53a50ef48509c966b0995e05cd4 100644 |
| --- a/src/objects.h |
| +++ b/src/objects.h |
| @@ -5197,6 +5197,9 @@ class SharedFunctionInfo: public HeapObject { |
| inline Smi* deopt_counter(); |
| inline void set_deopt_counter(Smi* counter); |
| + inline int ast_node_count(); |
| + inline void set_ast_node_count(int count); |
| + |
| // Add information on assignments of the form this.x = ...; |
| void SetThisPropertyAssignmentsInfo( |
| bool has_only_simple_this_property_assignments, |
| @@ -5269,6 +5272,12 @@ class SharedFunctionInfo: public HeapObject { |
| // through the API, which does not change this flag). |
| DECL_BOOLEAN_ACCESSORS(is_anonymous) |
| + // Indicates that the function cannot be crankshafted. |
| + DECL_BOOLEAN_ACCESSORS(dont_crankshaft) |
| + |
| + // Indicates that the function cannot be inlined. |
| + DECL_BOOLEAN_ACCESSORS(dont_inline) |
| + |
| // Indicates whether or not the code in the shared function support |
| // deoptimization. |
| inline bool has_deoptimization_support(); |
| @@ -5365,10 +5374,11 @@ class SharedFunctionInfo: public HeapObject { |
| kInitialMapOffset + kPointerSize; |
| static const int kDeoptCounterOffset = |
| kThisPropertyAssignmentsOffset + kPointerSize; |
| + static const int kAstNodeCountOffset = kDeoptCounterOffset + kPointerSize; |
| #if V8_HOST_ARCH_32_BIT |
| // Smi fields. |
| static const int kLengthOffset = |
| - kDeoptCounterOffset + kPointerSize; |
| + kAstNodeCountOffset + kPointerSize; |
| static const int kFormalParameterCountOffset = kLengthOffset + kPointerSize; |
| static const int kExpectedNofPropertiesOffset = |
| kFormalParameterCountOffset + kPointerSize; |
| @@ -5399,7 +5409,7 @@ class SharedFunctionInfo: public HeapObject { |
| // word is not set and thus this word cannot be treated as pointer |
| // to HeapObject during old space traversal. |
| static const int kLengthOffset = |
| - kDeoptCounterOffset + kPointerSize; |
| + kAstNodeCountOffset + kPointerSize; |
|
fschneider
2012/01/30 13:54:26
You could reduce the x64 version by pairing two pr
Jakob Kummerow
2012/02/01 14:46:09
Done.
|
| static const int kFormalParameterCountOffset = |
| kLengthOffset + kIntSize; |
| @@ -5471,6 +5481,8 @@ class SharedFunctionInfo: public HeapObject { |
| kBoundFunction, |
| kIsAnonymous, |
| kNameShouldPrintAsAnonymous, |
| + kDontCrankshaft, |
| + kDontInline, |
| kCompilerHintsCount // Pseudo entry |
| }; |