| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
| 3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
| 4 // met: | 4 // met: |
| 5 // | 5 // |
| 6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
| 7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
| 8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
| 9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
| 10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
| (...skipping 6763 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6774 | 6774 |
| 6775 // True if the function has any duplicated parameter names. | 6775 // True if the function has any duplicated parameter names. |
| 6776 DECL_BOOLEAN_ACCESSORS(has_duplicate_parameters) | 6776 DECL_BOOLEAN_ACCESSORS(has_duplicate_parameters) |
| 6777 | 6777 |
| 6778 // Indicates whether the function is a native function. | 6778 // Indicates whether the function is a native function. |
| 6779 // These needs special treatment in .call and .apply since | 6779 // These needs special treatment in .call and .apply since |
| 6780 // null passed as the receiver should not be translated to the | 6780 // null passed as the receiver should not be translated to the |
| 6781 // global object. | 6781 // global object. |
| 6782 DECL_BOOLEAN_ACCESSORS(native) | 6782 DECL_BOOLEAN_ACCESSORS(native) |
| 6783 | 6783 |
| 6784 // Indicate that this builtin needs to be inlined in crankshaft. | |
| 6785 DECL_BOOLEAN_ACCESSORS(inline_builtin) | |
| 6786 | |
| 6787 // Indicates that the function was created by the Function function. | 6784 // Indicates that the function was created by the Function function. |
| 6788 // Though it's anonymous, toString should treat it as if it had the name | 6785 // Though it's anonymous, toString should treat it as if it had the name |
| 6789 // "anonymous". We don't set the name itself so that the system does not | 6786 // "anonymous". We don't set the name itself so that the system does not |
| 6790 // see a binding for it. | 6787 // see a binding for it. |
| 6791 DECL_BOOLEAN_ACCESSORS(name_should_print_as_anonymous) | 6788 DECL_BOOLEAN_ACCESSORS(name_should_print_as_anonymous) |
| 6792 | 6789 |
| 6793 // Indicates whether the function is a bound function created using | 6790 // Indicates whether the function is a bound function created using |
| 6794 // the bind function. | 6791 // the bind function. |
| 6795 DECL_BOOLEAN_ACCESSORS(bound) | 6792 DECL_BOOLEAN_ACCESSORS(bound) |
| 6796 | 6793 |
| (...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6866 set_opt_count_and_bailout_reason( | 6863 set_opt_count_and_bailout_reason( |
| 6867 DisabledOptimizationReasonBits::update(opt_count_and_bailout_reason(), | 6864 DisabledOptimizationReasonBits::update(opt_count_and_bailout_reason(), |
| 6868 reason)); | 6865 reason)); |
| 6869 } | 6866 } |
| 6870 | 6867 |
| 6871 void set_dont_optimize_reason(BailoutReason reason) { | 6868 void set_dont_optimize_reason(BailoutReason reason) { |
| 6872 set_bailout_reason(reason); | 6869 set_bailout_reason(reason); |
| 6873 set_dont_optimize(reason != kNoReason); | 6870 set_dont_optimize(reason != kNoReason); |
| 6874 } | 6871 } |
| 6875 | 6872 |
| 6876 // Check whether or not this function is inlineable. | |
| 6877 bool IsInlineable(); | |
| 6878 | |
| 6879 // Source size of this function. | 6873 // Source size of this function. |
| 6880 int SourceSize(); | 6874 int SourceSize(); |
| 6881 | 6875 |
| 6882 // Calculate the instance size. | 6876 // Calculate the instance size. |
| 6883 int CalculateInstanceSize(); | 6877 int CalculateInstanceSize(); |
| 6884 | 6878 |
| 6885 // Calculate the number of in-object properties. | 6879 // Calculate the number of in-object properties. |
| 6886 int CalculateInObjectProperties(); | 6880 int CalculateInObjectProperties(); |
| 6887 | 6881 |
| 6888 // Dispatched behavior. | 6882 // Dispatched behavior. |
| (...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7019 enum CompilerHints { | 7013 enum CompilerHints { |
| 7020 kAllowLazyCompilation, | 7014 kAllowLazyCompilation, |
| 7021 kAllowLazyCompilationWithoutContext, | 7015 kAllowLazyCompilationWithoutContext, |
| 7022 kLiveObjectsMayExist, | 7016 kLiveObjectsMayExist, |
| 7023 kOptimizationDisabled, | 7017 kOptimizationDisabled, |
| 7024 kStrictModeFunction, | 7018 kStrictModeFunction, |
| 7025 kExtendedModeFunction, | 7019 kExtendedModeFunction, |
| 7026 kUsesArguments, | 7020 kUsesArguments, |
| 7027 kHasDuplicateParameters, | 7021 kHasDuplicateParameters, |
| 7028 kNative, | 7022 kNative, |
| 7029 kInlineBuiltin, | |
| 7030 kBoundFunction, | 7023 kBoundFunction, |
| 7031 kIsAnonymous, | 7024 kIsAnonymous, |
| 7032 kNameShouldPrintAsAnonymous, | 7025 kNameShouldPrintAsAnonymous, |
| 7033 kIsFunction, | 7026 kIsFunction, |
| 7034 kDontOptimize, | 7027 kDontOptimize, |
| 7035 kDontInline, | 7028 kDontInline, |
| 7036 kDontCache, | 7029 kDontCache, |
| 7037 kDontFlush, | 7030 kDontFlush, |
| 7038 kIsGenerator, | 7031 kIsGenerator, |
| 7039 kCompilerHintsCount // Pseudo entry | 7032 kCompilerHintsCount // Pseudo entry |
| (...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7246 ClearExceptionFlag flag); | 7239 ClearExceptionFlag flag); |
| 7247 | 7240 |
| 7248 // Tells whether or not the function is already marked for lazy | 7241 // Tells whether or not the function is already marked for lazy |
| 7249 // recompilation. | 7242 // recompilation. |
| 7250 inline bool IsMarkedForLazyRecompilation(); | 7243 inline bool IsMarkedForLazyRecompilation(); |
| 7251 inline bool IsMarkedForConcurrentRecompilation(); | 7244 inline bool IsMarkedForConcurrentRecompilation(); |
| 7252 | 7245 |
| 7253 // Tells whether or not the function is on the concurrent recompilation queue. | 7246 // Tells whether or not the function is on the concurrent recompilation queue. |
| 7254 inline bool IsInRecompileQueue(); | 7247 inline bool IsInRecompileQueue(); |
| 7255 | 7248 |
| 7249 // Check whether or not this function is inlineable. |
| 7250 bool IsInlineable(); |
| 7251 |
| 7256 // [literals_or_bindings]: Fixed array holding either | 7252 // [literals_or_bindings]: Fixed array holding either |
| 7257 // the materialized literals or the bindings of a bound function. | 7253 // the materialized literals or the bindings of a bound function. |
| 7258 // | 7254 // |
| 7259 // If the function contains object, regexp or array literals, the | 7255 // If the function contains object, regexp or array literals, the |
| 7260 // literals array prefix contains the object, regexp, and array | 7256 // literals array prefix contains the object, regexp, and array |
| 7261 // function to be used when creating these literals. This is | 7257 // function to be used when creating these literals. This is |
| 7262 // necessary so that we do not dynamically lookup the object, regexp | 7258 // necessary so that we do not dynamically lookup the object, regexp |
| 7263 // or array functions. Performing a dynamic lookup, we might end up | 7259 // or array functions. Performing a dynamic lookup, we might end up |
| 7264 // using the functions from a new context that we should not have | 7260 // using the functions from a new context that we should not have |
| 7265 // access to. | 7261 // access to. |
| (...skipping 3215 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 10481 } else { | 10477 } else { |
| 10482 value &= ~(1 << bit_position); | 10478 value &= ~(1 << bit_position); |
| 10483 } | 10479 } |
| 10484 return value; | 10480 return value; |
| 10485 } | 10481 } |
| 10486 }; | 10482 }; |
| 10487 | 10483 |
| 10488 } } // namespace v8::internal | 10484 } } // namespace v8::internal |
| 10489 | 10485 |
| 10490 #endif // V8_OBJECTS_H_ | 10486 #endif // V8_OBJECTS_H_ |
| OLD | NEW |