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

Unified Diff: src/interpreter/interpreter.h

Issue 2347143002: [interpreter] Add fast path for dynamic global lookups (Closed)
Patch Set: Fix bytecode operand documentation Created 4 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 | « src/interpreter/bytecodes.h ('k') | src/interpreter/interpreter.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/interpreter/interpreter.h
diff --git a/src/interpreter/interpreter.h b/src/interpreter/interpreter.h
index 1e37b11396337eea8ccaeea38383d601cf0644d4..022353037211917f04efae6fe9387bc3dd95b4d3 100644
--- a/src/interpreter/interpreter.h
+++ b/src/interpreter/interpreter.h
@@ -137,7 +137,13 @@ class Interpreter {
void DoLdaLookupContextSlot(Runtime::FunctionId function_id,
InterpreterAssembler* assembler);
- // Generates code to perform a lookup slot store depending on |language_mode|.
+ // Generates code to perform a lookup slot load via |function_id| that can
+ // fast path to a global load.
+ void DoLdaLookupGlobalSlot(Runtime::FunctionId function_id,
+ InterpreterAssembler* assembler);
+
+ // Generates code to perform a lookup slot store depending on
+ // |language_mode|.
void DoStaLookupSlot(LanguageMode language_mode,
InterpreterAssembler* assembler);
@@ -145,7 +151,9 @@ class Interpreter {
compiler::Node* BuildLoadContextSlot(InterpreterAssembler* assembler);
// Generates code to load a global.
- compiler::Node* BuildLoadGlobal(Callable ic, InterpreterAssembler* assembler);
+ compiler::Node* BuildLoadGlobal(Callable ic, compiler::Node* context,
+ compiler::Node* feedback_slot,
+ InterpreterAssembler* assembler);
// Generates code to load a named property.
compiler::Node* BuildLoadNamedProperty(Callable ic,
« no previous file with comments | « src/interpreter/bytecodes.h ('k') | src/interpreter/interpreter.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698