Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Side by Side Diff: src/objects.h

Issue 755173002: Partially revert "Optimize function across closures." (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 6 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/hydrogen-instructions.h ('k') | src/objects-inl.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef V8_OBJECTS_H_ 5 #ifndef V8_OBJECTS_H_
6 #define V8_OBJECTS_H_ 6 #define V8_OBJECTS_H_
7 7
8 #include <iosfwd> 8 #include <iosfwd>
9 9
10 #include "src/allocation.h" 10 #include "src/allocation.h"
(...skipping 6784 matching lines...) Expand 10 before | Expand all | Expand 10 after
6795 inline void set_ast_node_count(int count); 6795 inline void set_ast_node_count(int count);
6796 6796
6797 inline int profiler_ticks() const; 6797 inline int profiler_ticks() const;
6798 inline void set_profiler_ticks(int ticks); 6798 inline void set_profiler_ticks(int ticks);
6799 6799
6800 // Inline cache age is used to infer whether the function survived a context 6800 // Inline cache age is used to infer whether the function survived a context
6801 // disposal or not. In the former case we reset the opt_count. 6801 // disposal or not. In the former case we reset the opt_count.
6802 inline int ic_age(); 6802 inline int ic_age();
6803 inline void set_ic_age(int age); 6803 inline void set_ic_age(int age);
6804 6804
6805 DECL_BOOLEAN_ACCESSORS(optimize_next_closure)
6806
6807 // Indicates if this function can be lazy compiled. 6805 // Indicates if this function can be lazy compiled.
6808 // This is used to determine if we can safely flush code from a function 6806 // This is used to determine if we can safely flush code from a function
6809 // when doing GC if we expect that the function will no longer be used. 6807 // when doing GC if we expect that the function will no longer be used.
6810 DECL_BOOLEAN_ACCESSORS(allows_lazy_compilation) 6808 DECL_BOOLEAN_ACCESSORS(allows_lazy_compilation)
6811 6809
6812 // Indicates if this function can be lazy compiled without a context. 6810 // Indicates if this function can be lazy compiled without a context.
6813 // This is used to determine if we can force compilation without reaching 6811 // This is used to determine if we can force compilation without reaching
6814 // the function through program execution but through other means (e.g. heap 6812 // the function through program execution but through other means (e.g. heap
6815 // iteration by the debugger). 6813 // iteration by the debugger).
6816 DECL_BOOLEAN_ACCESSORS(allows_lazy_compilation_without_context) 6814 DECL_BOOLEAN_ACCESSORS(allows_lazy_compilation_without_context)
(...skipping 282 matching lines...) Expand 10 before | Expand all | Expand 10 after
7099 // the start_position_and_type field. 7097 // the start_position_and_type field.
7100 static const int kIsExpressionBit = 0; 7098 static const int kIsExpressionBit = 0;
7101 static const int kIsTopLevelBit = 1; 7099 static const int kIsTopLevelBit = 1;
7102 static const int kStartPositionShift = 2; 7100 static const int kStartPositionShift = 2;
7103 static const int kStartPositionMask = ~((1 << kStartPositionShift) - 1); 7101 static const int kStartPositionMask = ~((1 << kStartPositionShift) - 1);
7104 7102
7105 // Bit positions in compiler_hints. 7103 // Bit positions in compiler_hints.
7106 enum CompilerHints { 7104 enum CompilerHints {
7107 kAllowLazyCompilation, 7105 kAllowLazyCompilation,
7108 kAllowLazyCompilationWithoutContext, 7106 kAllowLazyCompilationWithoutContext,
7109 kOptimizeNextClosure,
7110 kOptimizationDisabled, 7107 kOptimizationDisabled,
7111 kStrictModeFunction, 7108 kStrictModeFunction,
7112 kUsesArguments, 7109 kUsesArguments,
7113 kUsesSuper, 7110 kUsesSuper,
7114 kHasDuplicateParameters, 7111 kHasDuplicateParameters,
7115 kNative, 7112 kNative,
7116 kInlineBuiltin, 7113 kInlineBuiltin,
7117 kBoundFunction, 7114 kBoundFunction,
7118 kIsAnonymous, 7115 kIsAnonymous,
7119 kNameShouldPrintAsAnonymous, 7116 kNameShouldPrintAsAnonymous,
(...skipping 3859 matching lines...) Expand 10 before | Expand all | Expand 10 after
10979 } else { 10976 } else {
10980 value &= ~(1 << bit_position); 10977 value &= ~(1 << bit_position);
10981 } 10978 }
10982 return value; 10979 return value;
10983 } 10980 }
10984 }; 10981 };
10985 10982
10986 } } // namespace v8::internal 10983 } } // namespace v8::internal
10987 10984
10988 #endif // V8_OBJECTS_H_ 10985 #endif // V8_OBJECTS_H_
OLDNEW
« no previous file with comments | « src/hydrogen-instructions.h ('k') | src/objects-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698