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

Unified Diff: runtime/vm/raw_object.h

Issue 2994283002: [VM-Compiler] Don't inline if we don't have inlining budget enough to fully inline.
Patch Set: Do InliningDecision the way Slava suggested Created 3 years, 3 months 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « runtime/vm/object.cc ('k') | runtime/vm/raw_object_snapshot.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/raw_object.h
diff --git a/runtime/vm/raw_object.h b/runtime/vm/raw_object.h
index 2a596d91654a00e64d1f98620eb7505ab71e2630..25eb9bc468f709811de1089e28f6793420f644e3 100644
--- a/runtime/vm/raw_object.h
+++ b/runtime/vm/raw_object.h
@@ -882,16 +882,26 @@ class RawFunction : public RawObject {
NOT_IN_PRECOMPILED(TokenPosition token_pos_);
NOT_IN_PRECOMPILED(TokenPosition end_token_pos_);
- NOT_IN_PRECOMPILED(intptr_t kernel_offset_);
- NOT_IN_PRECOMPILED(int32_t usage_counter_); // Accessed from generated code
- // (JIT only).
uint32_t kind_tag_; // See Function::KindTagBits.
int16_t num_fixed_parameters_;
int16_t num_optional_parameters_; // > 0: positional; < 0: named.
- NOT_IN_PRECOMPILED(uint16_t optimized_instruction_count_);
- NOT_IN_PRECOMPILED(uint16_t optimized_call_site_count_);
- NOT_IN_PRECOMPILED(int8_t deoptimization_counter_);
- NOT_IN_PRECOMPILED(int8_t was_compiled_);
+
+#define JIT_FUNCTION_COUNTERS(F) \
+ F(intptr_t, intptr_t, kernel_offset) \
+ F(intptr_t, int32_t, usage_counter) \
+ F(intptr_t, uint16_t, optimized_instruction_count) \
+ F(intptr_t, uint16_t, optimized_call_site_count) \
+ F(int8_t, int8_t, deoptimization_counter) \
+ F(intptr_t, int8_t, was_compiled_numeric) \
+ F(int, int8_t, inlining_depth)
+
+#if !defined(DART_PRECOMPILED_RUNTIME)
+#define DECLARE(return_type, type, name) type name##_;
+
+ JIT_FUNCTION_COUNTERS(DECLARE)
+
+#undef DECLARE
+#endif
};
class RawClosureData : public RawObject {
« no previous file with comments | « runtime/vm/object.cc ('k') | runtime/vm/raw_object_snapshot.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698