5 #ifndef V8_S390_FRAME_CONSTANTS_S390_H_ 6 #define V8_S390_FRAME_CONSTANTS_S390_H_ 8 #include "src/base/macros.h" 9 #include "src/frame-constants.h" 14 class EntryFrameConstants :
public AllStatic {
16 static constexpr
int kCallerFPOffset =
17 -(StandardFrameConstants::kFixedFrameSizeFromFp + kPointerSize);
20 class ExitFrameConstants :
public TypedFrameConstants {
22 static constexpr
int kSPOffset = TYPED_FRAME_PUSHED_VALUE_OFFSET(0);
23 static constexpr
int kCodeOffset = TYPED_FRAME_PUSHED_VALUE_OFFSET(1);
24 DEFINE_TYPED_FRAME_SIZES(2);
27 static constexpr
int kCallerFPOffset = 0 * kPointerSize;
29 static constexpr
int kCallerPCOffset = 1 * kPointerSize;
33 static constexpr
int kCallerSPDisplacement = 2 * kPointerSize;
36 class WasmCompileLazyFrameConstants :
public TypedFrameConstants {
38 static constexpr
int kNumberOfSavedGpParamRegs = 4;
39 #ifdef V8_TARGET_ARCH_S390X 40 static constexpr
int kNumberOfSavedFpParamRegs = 4;
42 static constexpr
int kNumberOfSavedFpParamRegs = 2;
46 static constexpr
int kWasmInstanceOffset = TYPED_FRAME_PUSHED_VALUE_OFFSET(0);
47 static constexpr
int kFixedFrameSizeFromFp =
48 TypedFrameConstants::kFixedFrameSizeFromFp +
49 kNumberOfSavedGpParamRegs * kPointerSize +
50 kNumberOfSavedFpParamRegs * kDoubleSize;
53 class JavaScriptFrameConstants :
public AllStatic {
56 static constexpr
int kLocal0Offset =
57 StandardFrameConstants::kExpressionsOffset;
58 static constexpr
int kLastParameterOffset = +2 * kPointerSize;
59 static constexpr
int kFunctionOffset =
60 StandardFrameConstants::kFunctionOffset;
63 static constexpr
int kParam0Offset = -2 * kPointerSize;
64 static constexpr
int kReceiverOffset = -1 * kPointerSize;
70 #endif // V8_S390_FRAME_CONSTANTS_S390_H_