| Index: src/compiler/machine-operator.h
|
| diff --git a/src/compiler/machine-operator.h b/src/compiler/machine-operator.h
|
| index b53202e298b264472a16bab0e9d37adc69d7c36d..82d40a09e3fa39069a04576e64542dda9f27a1e2 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);
|
|
|
| @@ -599,8 +621,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();
|
|
|