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

Unified Diff: src/interpreter/interpreter-assembler.h

Issue 2894293003: Save/restore only live registers in the generator suspend/resume. (Closed)
Patch Set: Tweak Created 3 years, 7 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-assembler.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/interpreter/interpreter-assembler.h
diff --git a/src/interpreter/interpreter-assembler.h b/src/interpreter/interpreter-assembler.h
index c2e0bb3bd76fd12fd131c8eeb6be9455b76ea91f..9bcda04c3cc05785e7b7294b790645eb312316f5 100644
--- a/src/interpreter/interpreter-assembler.h
+++ b/src/interpreter/interpreter-assembler.h
@@ -81,12 +81,11 @@ class V8_EXPORT_PRIVATE InterpreterAssembler : public CodeStubAssembler {
void GotoIfHasContextExtensionUpToDepth(compiler::Node* context,
compiler::Node* depth, Label* target);
- // Number of registers.
- compiler::Node* RegisterCount();
-
// Backup/restore register file to/from a fixed array of the correct length.
- compiler::Node* ExportRegisterFile(compiler::Node* array);
- compiler::Node* ImportRegisterFile(compiler::Node* array);
+ compiler::Node* ExportRegisterFile(compiler::Node* array,
+ compiler::Node* register_count);
+ compiler::Node* ImportRegisterFile(compiler::Node* array,
+ compiler::Node* register_count);
// Loads from and stores to the interpreter register file.
compiler::Node* LoadRegister(Register reg);
@@ -221,6 +220,9 @@ class V8_EXPORT_PRIVATE InterpreterAssembler : public CodeStubAssembler {
void Abort(BailoutReason bailout_reason);
void AbortIfWordNotEqual(compiler::Node* lhs, compiler::Node* rhs,
BailoutReason bailout_reason);
+ // Abort if |register_count| is invalid for given register file array.
+ void AbortIfRegisterCountInvalid(compiler::Node* register_file,
+ compiler::Node* register_count);
// Dispatch to frame dropper trampoline if necessary.
void MaybeDropFrames(compiler::Node* context);
« no previous file with comments | « src/interpreter/bytecodes.h ('k') | src/interpreter/interpreter-assembler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698