From f78c6a83ee0f6ead22c608aeb2444a1248e604bd Mon Sep 17 00:00:00 2001 From: Eli Friedman Date: Tue, 13 Sep 2011 22:19:59 +0000 Subject: Fix check for unaligned load/store so it doesn't catch over-aligned load/store. llvm-svn: 139649 --- llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'llvm/lib/CodeGen') diff --git a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp index 4c58fe92266..9d86c759b82 100644 --- a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp @@ -3402,7 +3402,7 @@ void SelectionDAGBuilder::visitAtomicLoad(const LoadInst &I) { EVT VT = EVT::getEVT(I.getType()); - if (I.getAlignment() * 8 != VT.getSizeInBits()) + if (I.getAlignment() * 8 < VT.getSizeInBits()) report_fatal_error("Cannot generate unaligned atomic load"); SDValue L = @@ -3432,7 +3432,7 @@ void SelectionDAGBuilder::visitAtomicStore(const StoreInst &I) { EVT VT = EVT::getEVT(I.getValueOperand()->getType()); - if (I.getAlignment() * 8 != VT.getSizeInBits()) + if (I.getAlignment() * 8 < VT.getSizeInBits()) report_fatal_error("Cannot generate unaligned atomic store"); if (TLI.getInsertFencesForAtomic()) -- cgit v1.2.3