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

Unified Diff: src/compiler/linkage.h

Issue 1460183002: [turbofan] Add general support for sp-based frame access (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: All platforms Created 5 years, 1 month 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/linkage.h
diff --git a/src/compiler/linkage.h b/src/compiler/linkage.h
index 5d89d0c6b3d2afbd5012a277e1688361dfe60d79..892baa9de70c659c64f273d3e430b2b86e26a537 100644
--- a/src/compiler/linkage.h
+++ b/src/compiler/linkage.h
@@ -23,6 +23,7 @@ namespace compiler {
const RegList kNoCalleeSaved = 0;
+class FrameAccessState;
class Node;
class OsrHelper;
@@ -188,6 +189,10 @@ class CallDescriptor final : public ZoneObject {
// Returns {true} if this descriptor is a call to a JSFunction.
bool IsJSFunctionCall() const { return kind_ == kCallJSFunction; }
+ bool RequiresFrameAsIncoming() const {
+ return IsCFunctionCall() || IsJSFunctionCall();
+ }
+
// The number of return values from this call.
size_t ReturnCount() const { return machine_sig_->return_count(); }
@@ -352,7 +357,8 @@ class Linkage : public ZoneObject {
// calling convention and the specific frame layout, and may thus be
// architecture-specific. Negative spill slots indicate arguments on the
// caller's frame.
- FrameOffset GetFrameOffset(int spill_slot, Frame* frame) const;
+ FrameOffset GetFrameOffset(int spill_slot,
+ FrameAccessState* frame_access_state) const;
static int FrameStateInputCount(Runtime::FunctionId function);

Powered by Google App Engine
This is Rietveld 408576698