Index: src/arm64/assembler-arm64.h |
diff --git a/src/arm64/assembler-arm64.h b/src/arm64/assembler-arm64.h |
index c0ad4d053b184141221b70363592a6ee104dde01..653c4290790696aef4b56d01d9d6aa21049ae98d 100644 |
--- a/src/arm64/assembler-arm64.h |
+++ b/src/arm64/assembler-arm64.h |
@@ -729,6 +729,16 @@ class MemOperand { |
// handle indexed modes. |
inline Operand OffsetAsOperand() const; |
+ enum PairResult { |
+ kNotPair, // Can't use a pair instruction. |
+ kPairAB, // Can use a pair instruction (operandA has lower address). |
+ kPairBA // Can use a pair instruction (operandB has lower address). |
+ }; |
+ // Check if two MemOperand are consistent for stp/ldp use. |
+ static PairResult AreConsistentForPair(const MemOperand& operandA, |
+ const MemOperand& operandB, |
+ int access_size_log2 = kXRegSizeLog2); |
+ |
private: |
Register base_; |
Register regoffset_; |