Changes in directory llvm/lib/AsmParser:
llvmAsmParser.y updated: 1.252 -> 1.253 --- Log message: Use isValidOperands instead of duplicating or eliding checks. --- Diffs of the changes: (+8 -19) llvmAsmParser.y | 27 ++++++++------------------- 1 files changed, 8 insertions(+), 19 deletions(-) Index: llvm/lib/AsmParser/llvmAsmParser.y diff -u llvm/lib/AsmParser/llvmAsmParser.y:1.252 llvm/lib/AsmParser/llvmAsmParser.y:1.253 --- llvm/lib/AsmParser/llvmAsmParser.y:1.252 Fri Apr 7 22:53:34 2006 +++ llvm/lib/AsmParser/llvmAsmParser.y Fri Apr 7 23:08:32 2006 @@ -1541,14 +1541,13 @@ $$ = ConstantExpr::get($1, $3, $5); } | EXTRACTELEMENT '(' ConstVal ',' ConstVal ')' { - if (!isa<PackedType>($3->getType())) - ThrowException("First operand of extractelement must be " - "packed type!"); - if ($5->getType() != Type::UIntTy) - ThrowException("Second operand of extractelement must be uint!"); + if (!ExtractElementInst::isValidOperands($3, $5)) + ThrowException("Invalid extractelement operands!"); $$ = ConstantExpr::getExtractElement($3, $5); } | INSERTELEMENT '(' ConstVal ',' ConstVal ',' ConstVal ')' { + if (!InsertElementInst::isValidOperands($3, $5, $7)) + ThrowException("Invalid insertelement operands!"); $$ = ConstantExpr::getInsertElement($3, $5, $7); } | SHUFFLEVECTOR '(' ConstVal ',' ConstVal ',' ConstVal ')' { @@ -2250,23 +2249,13 @@ delete $4; } | EXTRACTELEMENT ResolvedVal ',' ResolvedVal { - if (!isa<PackedType>($2->getType())) - ThrowException("First operand of extractelement must be " - "packed type!"); - if ($4->getType() != Type::UIntTy) - ThrowException("Second operand of extractelement must be uint!"); + if (!ExtractElementInst::isValidOperands($2, $4)) + ThrowException("Invalid extractelement operands!"); $$ = new ExtractElementInst($2, $4); } | INSERTELEMENT ResolvedVal ',' ResolvedVal ',' ResolvedVal { - if (!isa<PackedType>($2->getType())) - ThrowException("First operand of insertelement must be " - "packed type!"); - if ($4->getType() != - cast<PackedType>($2->getType())->getElementType()) - ThrowException("Second operand of insertelement must be " - "packed element type!"); - if ($6->getType() != Type::UIntTy) - ThrowException("Third operand of insertelement must be uint!"); + if (!InsertElementInst::isValidOperands($2, $4, $6)) + ThrowException("Invalid insertelement operands!"); $$ = new InsertElementInst($2, $4, $6); } | SHUFFLEVECTOR ResolvedVal ',' ResolvedVal ',' ResolvedVal { _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits