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

Unified Diff: src/compilation-info.h

Issue 2451853002: Uniform and precise source positions for inlining (Closed)
Patch Set: fixed obsolete identifiers Created 4 years, 2 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
Index: src/compilation-info.h
diff --git a/src/compilation-info.h b/src/compilation-info.h
index 676d868ff18db19db742fe9001c2f3a8f3b77b6b..57d90e62d66d4426ecc7b68c4c89e8f13e9f5043 100644
--- a/src/compilation-info.h
+++ b/src/compilation-info.h
@@ -290,18 +290,31 @@ class CompilationInfo final {
// Do not remove.
Handle<Code> inlined_code_object_root;
+ InliningPosition position;
+
InlinedFunctionHolder(Handle<SharedFunctionInfo> inlined_shared_info,
- Handle<Code> inlined_code_object_root)
+ Handle<Code> inlined_code_object_root,
+ SourcePosition pos)
: shared_info(inlined_shared_info),
- inlined_code_object_root(inlined_code_object_root) {}
+ inlined_code_object_root(inlined_code_object_root) {
+ position.position = pos;
+ // initialized when generating the deoptimization literals
+ position.inlined_function_id = -1;
+ }
+
+ void RegisterInlinedFunctionId(size_t inlined_function_id) {
+ position.inlined_function_id = static_cast<int>(inlined_function_id);
+ }
};
typedef std::vector<InlinedFunctionHolder> InlinedFunctionList;
- InlinedFunctionList const& inlined_functions() const {
- return inlined_functions_;
- }
+ InlinedFunctionList& inlined_functions() { return inlined_functions_; }
+
+ // returns the inlining id for source position tracking
Michael Starzinger 2016/10/28 08:45:50 nit: Please capitalize and punctuate comments ever
+ int AddInlinedFunction(Handle<SharedFunctionInfo> inlined_function,
+ SourcePosition pos);
- void AddInlinedFunction(Handle<SharedFunctionInfo> inlined_function);
+ Handle<PodArray<InliningPosition>> CreateInliningPositions();
std::unique_ptr<char[]> GetDebugName() const;
« src/assembler.cc ('K') | « src/assembler.cc ('k') | src/compilation-info.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698