Silly assertion. Forgot variable_ops instructions can have arbitrary number of

operands.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32592 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Evan Cheng 2006-12-15 06:37:08 +00:00
parent 0e51207959
commit f2f6a1baf7

View File

@ -132,8 +132,10 @@ public:
/// it is set. Returns -1 if it is not set.
int getOperandConstraint(unsigned OpNum,
TOI::OperandConstraint Constraint) const {
assert(OpNum < numOperands && "Invalid operand # of TargetInstrInfo");
if (OpInfo[OpNum].Constraints & (1 << Constraint)) {
assert((OpNum < numOperands || (Flags & M_VARIABLE_OPS)) &&
"Invalid operand # of TargetInstrInfo");
if (OpNum < numOperands &&
(OpInfo[OpNum].Constraints & (1 << Constraint))) {
unsigned Pos = 16 + Constraint * 4;
return (int)(OpInfo[OpNum].Constraints >> Pos) & 0xf;
}