TargetLowering::isOperandValidForConstraint

llvm-svn: 31319
This commit is contained in:
Chris Lattner 2006-10-31 19:41:18 +00:00
parent 8c6949e5b2
commit 6f043b90ea
1 changed files with 7 additions and 2 deletions

View File

@ -2487,8 +2487,13 @@ void SelectionDAGLowering::visitInlineAsm(CallInst &I) {
CTy = TLI.getConstraintType(ConstraintCode[0]); CTy = TLI.getConstraintType(ConstraintCode[0]);
if (CTy == TargetLowering::C_Other) { if (CTy == TargetLowering::C_Other) {
if (!TLI.isOperandValidForConstraint(InOperandVal, ConstraintCode[0])) InOperandVal = TLI.isOperandValidForConstraint(InOperandVal,
assert(0 && "MATCH FAIL!"); ConstraintCode[0], DAG);
if (!InOperandVal.Val) {
std::cerr << "Invalid operand for inline asm constraint '"
<< ConstraintCode << "'!\n";
exit(1);
}
// Add information to the INLINEASM node to know about this input. // Add information to the INLINEASM node to know about this input.
unsigned ResOpType = 3 /*IMM*/ | (1 << 3); unsigned ResOpType = 3 /*IMM*/ | (1 << 3);