From 87e3341ff699682938cdcf941f39aee2e25fa898 Mon Sep 17 00:00:00 2001 From: Chad Rosier Date: Tue, 9 Feb 2016 20:18:07 +0000 Subject: [PATCH] [AArch64] Add an assert to ensure we don't scale an offset that can't be scaled. llvm-svn: 260272 --- llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp b/llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp index f85d6a8f2dc9..d07ef3cecccd 100644 --- a/llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp +++ b/llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp @@ -842,8 +842,10 @@ AArch64LoadStoreOpt::mergePairedInsns(MachineBasicBlock::iterator I, } int OffsetImm = getLdStOffsetOp(RtMI).getImm(); // Handle Unscaled. - if (IsUnscaled) + if (IsUnscaled) { + assert (!(OffsetImm % OffsetStride) && "Unscaled offset cannot be scaled."); OffsetImm /= OffsetStride; + } // Construct the new instruction. MachineInstrBuilder MIB;