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

Unified Diff: src/compiler/bytecode-graph-builder.cc

Issue 2707873002: Collect type profile for DevTools. (Closed)
Patch Set: Use constructor name if available. Created 3 years, 10 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/compiler/bytecode-graph-builder.cc
diff --git a/src/compiler/bytecode-graph-builder.cc b/src/compiler/bytecode-graph-builder.cc
index aaeee666aa69d35f91801872fe03693533967141..3d487a7efd1162f87e0e895f412a1f6ba060f74e 100644
--- a/src/compiler/bytecode-graph-builder.cc
+++ b/src/compiler/bytecode-graph-builder.cc
@@ -802,6 +802,22 @@ void BytecodeGraphBuilder::VisitStaDataPropertyInLiteral() {
environment()->RecordAfterState(node, Environment::kAttachFrameState);
}
+void BytecodeGraphBuilder::VisitCollectTypeProfile() {
+ PrepareEagerCheckpoint();
+
+ Node* name =
+ environment()->LookupRegister(bytecode_iterator().GetRegisterOperand(0));
+ Node* value =
+ environment()->LookupRegister(bytecode_iterator().GetRegisterOperand(1));
+ VectorSlotPair feedback =
+ CreateVectorSlotPair(bytecode_iterator().GetIndexOperand(2));
+
+ const Operator* op = javascript()->CollectTypeProfile(feedback);
+
+ Node* node = NewNode(op, name, value);
+ environment()->RecordAfterState(node, Environment::kAttachFrameState);
+}
+
void BytecodeGraphBuilder::VisitLdaContextSlot() {
const Operator* op = javascript()->LoadContext(
bytecode_iterator().GetUnsignedImmediateOperand(2),
« no previous file with comments | « src/ast/ast.cc ('k') | src/compiler/js-generic-lowering.cc » ('j') | src/feedback-vector-inl.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698