aboutsummaryrefslogtreecommitdiffstats
path: root/lib/CodeGen
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2009-02-20 23:29:13 +0000
committerDan Gohman <gohman@apple.com>2009-02-20 23:29:13 +0000
commit4e06178d99a68d447d3a64400b5342ee54a10aa8 (patch)
tree9789845417bfe4a7eb71523b0246b276f4defad4 /lib/CodeGen
parent662086ab0ce2a5090280c967f0bafb75d2bc739c (diff)
downloadexternal_llvm-4e06178d99a68d447d3a64400b5342ee54a10aa8.tar.gz
external_llvm-4e06178d99a68d447d3a64400b5342ee54a10aa8.tar.bz2
external_llvm-4e06178d99a68d447d3a64400b5342ee54a10aa8.zip
Fix a bug that David Greene found in the DAGCombiner's logic
that checks whether it's safe to transform a store of a bitcast value into a store of the original value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65201 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen')
-rw-r--r--lib/CodeGen/SelectionDAG/DAGCombiner.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/CodeGen/SelectionDAG/DAGCombiner.cpp b/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
index 976a9ccebc..4b3935c217 100644
--- a/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
+++ b/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
@@ -4903,9 +4903,9 @@ SDValue DAGCombiner::visitSTORE(SDNode *N) {
// resultant store does not need a higher alignment than the original.
if (Value.getOpcode() == ISD::BIT_CONVERT && !ST->isTruncatingStore() &&
ST->isUnindexed()) {
- unsigned Align = ST->getAlignment();
+ unsigned OrigAlign = ST->getAlignment();
MVT SVT = Value.getOperand(0).getValueType();
- unsigned OrigAlign = TLI.getTargetData()->
+ unsigned Align = TLI.getTargetData()->
getABITypeAlignment(SVT.getTypeForMVT());
if (Align <= OrigAlign &&
((!LegalOperations && !ST->isVolatile()) ||