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

Side by Side Diff: src/objects.h

Issue 699143002: Revert "Optimize function across closures." (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 1 month 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 | Annotate | Revision Log
« 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 6765 matching lines...) Expand 10 before | Expand all | Expand 10 after
6776 inline void set_ast_node_count(int count); 6776 inline void set_ast_node_count(int count);
6777 6777
6778 inline int profiler_ticks() const; 6778 inline int profiler_ticks() const;
6779 inline void set_profiler_ticks(int ticks); 6779 inline void set_profiler_ticks(int ticks);
6780 6780
6781 // Inline cache age is used to infer whether the function survived a context 6781 // Inline cache age is used to infer whether the function survived a context
6782 // disposal or not. In the former case we reset the opt_count. 6782 // disposal or not. In the former case we reset the opt_count.
6783 inline int ic_age(); 6783 inline int ic_age();
6784 inline void set_ic_age(int age); 6784 inline void set_ic_age(int age);
6785 6785
6786 DECL_BOOLEAN_ACCESSORS(optimize_next_closure)
6787
6788 // Indicates if this function can be lazy compiled. 6786 // Indicates if this function can be lazy compiled.
6789 // This is used to determine if we can safely flush code from a function 6787 // This is used to determine if we can safely flush code from a function
6790 // when doing GC if we expect that the function will no longer be used. 6788 // when doing GC if we expect that the function will no longer be used.
6791 DECL_BOOLEAN_ACCESSORS(allows_lazy_compilation) 6789 DECL_BOOLEAN_ACCESSORS(allows_lazy_compilation)
6792 6790
6793 // Indicates if this function can be lazy compiled without a context. 6791 // Indicates if this function can be lazy compiled without a context.
6794 // This is used to determine if we can force compilation without reaching 6792 // This is used to determine if we can force compilation without reaching
6795 // the function through program execution but through other means (e.g. heap 6793 // the function through program execution but through other means (e.g. heap
6796 // iteration by the debugger). 6794 // iteration by the debugger).
6797 DECL_BOOLEAN_ACCESSORS(allows_lazy_compilation_without_context) 6795 DECL_BOOLEAN_ACCESSORS(allows_lazy_compilation_without_context)
(...skipping 270 matching lines...) Expand 10 before | Expand all | Expand 10 after
7068 // the start_position_and_type field. 7066 // the start_position_and_type field.
7069 static const int kIsExpressionBit = 0; 7067 static const int kIsExpressionBit = 0;
7070 static const int kIsTopLevelBit = 1; 7068 static const int kIsTopLevelBit = 1;
7071 static const int kStartPositionShift = 2; 7069 static const int kStartPositionShift = 2;
7072 static const int kStartPositionMask = ~((1 << kStartPositionShift) - 1); 7070 static const int kStartPositionMask = ~((1 << kStartPositionShift) - 1);
7073 7071
7074 // Bit positions in compiler_hints. 7072 // Bit positions in compiler_hints.
7075 enum CompilerHints { 7073 enum CompilerHints {
7076 kAllowLazyCompilation, 7074 kAllowLazyCompilation,
7077 kAllowLazyCompilationWithoutContext, 7075 kAllowLazyCompilationWithoutContext,
7078 kOptimizeNextClosure,
7079 kOptimizationDisabled, 7076 kOptimizationDisabled,
7080 kStrictModeFunction, 7077 kStrictModeFunction,
7081 kUsesArguments, 7078 kUsesArguments,
7082 kHasDuplicateParameters, 7079 kHasDuplicateParameters,
7083 kNative, 7080 kNative,
7084 kInlineBuiltin, 7081 kInlineBuiltin,
7085 kBoundFunction, 7082 kBoundFunction,
7086 kIsAnonymous, 7083 kIsAnonymous,
7087 kNameShouldPrintAsAnonymous, 7084 kNameShouldPrintAsAnonymous,
7088 kIsFunction, 7085 kIsFunction,
(...skipping 3843 matching lines...) Expand 10 before | Expand all | Expand 10 after
10932 } else { 10929 } else {
10933 value &= ~(1 << bit_position); 10930 value &= ~(1 << bit_position);
10934 } 10931 }
10935 return value; 10932 return value;
10936 } 10933 }
10937 }; 10934 };
10938 10935
10939 } } // namespace v8::internal 10936 } } // namespace v8::internal
10940 10937
10941 #endif // V8_OBJECTS_H_ 10938 #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