| Index: src/compiler/machine-operator.h
|
| diff --git a/src/compiler/machine-operator.h b/src/compiler/machine-operator.h
|
| index 9ffb3553623cc46f402c8c8dc9e1d7c4b8608acd..67f8daf0e5cce03e705b4e192b5f661c68defd24 100644
|
| --- a/src/compiler/machine-operator.h
|
| +++ b/src/compiler/machine-operator.h
|
| @@ -93,7 +93,29 @@ typedef MachineRepresentation CheckedStoreRepresentation;
|
|
|
| CheckedStoreRepresentation CheckedStoreRepresentationOf(Operator const*);
|
|
|
| -int StackSlotSizeOf(Operator const* op);
|
| +class StackSlotRepresentation final {
|
| + public:
|
| + StackSlotRepresentation(int size, int alignment)
|
| + : size_(size), alignment_(alignment) {}
|
| +
|
| + int size() const { return size_; }
|
| + int alignment() const { return alignment_; }
|
| +
|
| + private:
|
| + int size_;
|
| + int alignment_;
|
| +};
|
| +
|
| +V8_EXPORT_PRIVATE bool operator==(StackSlotRepresentation,
|
| + StackSlotRepresentation);
|
| +bool operator!=(StackSlotRepresentation, StackSlotRepresentation);
|
| +
|
| +size_t hash_value(StackSlotRepresentation);
|
| +
|
| +V8_EXPORT_PRIVATE std::ostream& operator<<(std::ostream&,
|
| + StackSlotRepresentation);
|
| +
|
| +StackSlotRepresentation const& StackSlotRepresentationOf(Operator const* op);
|
|
|
| MachineRepresentation AtomicStoreRepresentationOf(Operator const* op);
|
|
|
| @@ -604,8 +626,8 @@ class V8_EXPORT_PRIVATE MachineOperatorBuilder final
|
| // unaligned store [base + index], value
|
| const Operator* UnalignedStore(UnalignedStoreRepresentation rep);
|
|
|
| - const Operator* StackSlot(int size);
|
| - const Operator* StackSlot(MachineRepresentation rep);
|
| + const Operator* StackSlot(int size, int alignment = 0);
|
| + const Operator* StackSlot(MachineRepresentation rep, int alignment = 0);
|
|
|
| // Access to the machine stack.
|
| const Operator* LoadStackPointer();
|
|
|