[llvm-commits] [llvm] r96750 - /llvm/trunk/include/llvm/CodeGen/DAGISelHeader.h
Chris Lattner
sabre at nondot.org
Sun Feb 21 11:35:07 PST 2010
Author: lattner
Date: Sun Feb 21 13:35:07 2010
New Revision: 96750
URL: http://llvm.org/viewvc/llvm-project?rev=96750&view=rev
Log:
Relax an assertion a bit. We allow replacing things like
<4 x i32> with <4 x float> values if they end up the same
register class. This gets us up to 231 passes on the ppc
tests (only 7 fails).
Modified:
llvm/trunk/include/llvm/CodeGen/DAGISelHeader.h
Modified: llvm/trunk/include/llvm/CodeGen/DAGISelHeader.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/CodeGen/DAGISelHeader.h?rev=96750&r1=96749&r2=96750&view=diff
==============================================================================
--- llvm/trunk/include/llvm/CodeGen/DAGISelHeader.h (original)
+++ llvm/trunk/include/llvm/CodeGen/DAGISelHeader.h Sun Feb 21 13:35:07 2010
@@ -716,7 +716,9 @@
unsigned ResSlot = MatcherTable[MatcherIndex++];
assert(ResSlot < RecordedNodes.size() && "Invalid CheckSame");
SDValue Res = RecordedNodes[ResSlot];
- assert(NodeToMatch->getValueType(i) == Res.getValueType() &&
+ assert((NodeToMatch->getValueType(i) == Res.getValueType() ||
+ NodeToMatch->getValueType(i).getSizeInBits() ==
+ Res.getValueType().getSizeInBits()) &&
"invalid replacement");
ReplaceUses(SDValue(NodeToMatch, i), Res);
}
More information about the llvm-commits
mailing list