OLD | NEW |
1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 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_COMPILATION_INFO_H_ | 5 #ifndef V8_COMPILATION_INFO_H_ |
6 #define V8_COMPILATION_INFO_H_ | 6 #define V8_COMPILATION_INFO_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 | 9 |
10 #include "src/compilation-dependencies.h" | 10 #include "src/compilation-dependencies.h" |
(...skipping 25 matching lines...) Expand all Loading... |
36 kDeferredCalling = 1 << 0, | 36 kDeferredCalling = 1 << 0, |
37 kNonDeferredCalling = 1 << 1, | 37 kNonDeferredCalling = 1 << 1, |
38 kSavesCallerDoubles = 1 << 2, | 38 kSavesCallerDoubles = 1 << 2, |
39 kRequiresFrame = 1 << 3, | 39 kRequiresFrame = 1 << 3, |
40 kMustNotHaveEagerFrame = 1 << 4, | 40 kMustNotHaveEagerFrame = 1 << 4, |
41 kDeoptimizationSupport = 1 << 5, | 41 kDeoptimizationSupport = 1 << 5, |
42 kAccessorInliningEnabled = 1 << 6, | 42 kAccessorInliningEnabled = 1 << 6, |
43 kSerializing = 1 << 7, | 43 kSerializing = 1 << 7, |
44 kFunctionContextSpecializing = 1 << 8, | 44 kFunctionContextSpecializing = 1 << 8, |
45 kFrameSpecializing = 1 << 9, | 45 kFrameSpecializing = 1 << 9, |
46 kNativeContextSpecializing = 1 << 10, | 46 kInliningEnabled = 1 << 10, |
47 kInliningEnabled = 1 << 11, | 47 kDisableFutureOptimization = 1 << 11, |
48 kDisableFutureOptimization = 1 << 12, | 48 kSplittingEnabled = 1 << 12, |
49 kSplittingEnabled = 1 << 13, | 49 kDeoptimizationEnabled = 1 << 13, |
50 kDeoptimizationEnabled = 1 << 14, | 50 kSourcePositionsEnabled = 1 << 14, |
51 kSourcePositionsEnabled = 1 << 15, | 51 kBailoutOnUninitialized = 1 << 15, |
52 kBailoutOnUninitialized = 1 << 16, | 52 kOptimizeFromBytecode = 1 << 16, |
53 kOptimizeFromBytecode = 1 << 17, | 53 kTypeFeedbackEnabled = 1 << 17, |
54 kTypeFeedbackEnabled = 1 << 18, | |
55 }; | 54 }; |
56 | 55 |
57 CompilationInfo(ParseInfo* parse_info, Handle<JSFunction> closure); | 56 CompilationInfo(ParseInfo* parse_info, Handle<JSFunction> closure); |
58 CompilationInfo(Vector<const char> debug_name, Isolate* isolate, Zone* zone, | 57 CompilationInfo(Vector<const char> debug_name, Isolate* isolate, Zone* zone, |
59 Code::Flags code_flags); | 58 Code::Flags code_flags); |
60 ~CompilationInfo(); | 59 ~CompilationInfo(); |
61 | 60 |
62 ParseInfo* parse_info() const { return parse_info_; } | 61 ParseInfo* parse_info() const { return parse_info_; } |
63 | 62 |
64 // ----------------------------------------------------------- | 63 // ----------------------------------------------------------- |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
136 } | 135 } |
137 | 136 |
138 bool is_function_context_specializing() const { | 137 bool is_function_context_specializing() const { |
139 return GetFlag(kFunctionContextSpecializing); | 138 return GetFlag(kFunctionContextSpecializing); |
140 } | 139 } |
141 | 140 |
142 void MarkAsFrameSpecializing() { SetFlag(kFrameSpecializing); } | 141 void MarkAsFrameSpecializing() { SetFlag(kFrameSpecializing); } |
143 | 142 |
144 bool is_frame_specializing() const { return GetFlag(kFrameSpecializing); } | 143 bool is_frame_specializing() const { return GetFlag(kFrameSpecializing); } |
145 | 144 |
146 void MarkAsNativeContextSpecializing() { | |
147 SetFlag(kNativeContextSpecializing); | |
148 } | |
149 | |
150 bool is_native_context_specializing() const { | |
151 return GetFlag(kNativeContextSpecializing); | |
152 } | |
153 | |
154 void MarkAsDeoptimizationEnabled() { SetFlag(kDeoptimizationEnabled); } | 145 void MarkAsDeoptimizationEnabled() { SetFlag(kDeoptimizationEnabled); } |
155 | 146 |
156 bool is_deoptimization_enabled() const { | 147 bool is_deoptimization_enabled() const { |
157 return GetFlag(kDeoptimizationEnabled); | 148 return GetFlag(kDeoptimizationEnabled); |
158 } | 149 } |
159 | 150 |
160 void MarkAsTypeFeedbackEnabled() { SetFlag(kTypeFeedbackEnabled); } | 151 void MarkAsTypeFeedbackEnabled() { SetFlag(kTypeFeedbackEnabled); } |
161 | 152 |
162 bool is_type_feedback_enabled() const { | 153 bool is_type_feedback_enabled() const { |
163 return GetFlag(kTypeFeedbackEnabled); | 154 return GetFlag(kTypeFeedbackEnabled); |
(...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
392 | 383 |
393 Vector<const char> debug_name_; | 384 Vector<const char> debug_name_; |
394 | 385 |
395 DISALLOW_COPY_AND_ASSIGN(CompilationInfo); | 386 DISALLOW_COPY_AND_ASSIGN(CompilationInfo); |
396 }; | 387 }; |
397 | 388 |
398 } // namespace internal | 389 } // namespace internal |
399 } // namespace v8 | 390 } // namespace v8 |
400 | 391 |
401 #endif // V8_COMPILATION_INFO_H_ | 392 #endif // V8_COMPILATION_INFO_H_ |
OLD | NEW |