Lines Matching refs:InputExpr

378     Expr *InputExpr = Exprs[i];  in ActOnGCCAsmStmt()  local
381 if (CheckNakedParmReference(InputExpr, *this)) in ActOnGCCAsmStmt()
386 checkExprMemoryConstraintCompat(*this, InputExpr, Info, true)) in ActOnGCCAsmStmt()
391 if (CheckAsmLValue(InputExpr, *this)) in ActOnGCCAsmStmt()
392 return StmtError(Diag(InputExpr->getBeginLoc(), in ActOnGCCAsmStmt()
395 << InputExpr->getSourceRange()); in ActOnGCCAsmStmt()
397 if (!InputExpr->isValueDependent()) { in ActOnGCCAsmStmt()
399 if (InputExpr->EvaluateAsRValue(EVResult, Context, true)) { in ActOnGCCAsmStmt()
403 if (EVResult.Val.toIntegralConstant(IntResult, InputExpr->getType(), in ActOnGCCAsmStmt()
406 return StmtError(Diag(InputExpr->getBeginLoc(), in ActOnGCCAsmStmt()
410 << InputExpr->getSourceRange()); in ActOnGCCAsmStmt()
423 if (InputExpr->getType()->isVoidType()) { in ActOnGCCAsmStmt()
425 Diag(InputExpr->getBeginLoc(), diag::err_asm_invalid_type_in_input) in ActOnGCCAsmStmt()
426 << InputExpr->getType() << Info.getConstraintStr() in ActOnGCCAsmStmt()
427 << InputExpr->getSourceRange()); in ActOnGCCAsmStmt()
431 if (InputExpr->getType()->isExtIntType()) in ActOnGCCAsmStmt()
433 Diag(InputExpr->getBeginLoc(), diag::err_asm_invalid_type) in ActOnGCCAsmStmt()
434 << InputExpr->getType() << 1 /*Output*/ in ActOnGCCAsmStmt()
435 << InputExpr->getSourceRange()); in ActOnGCCAsmStmt()
444 if (RequireCompleteType(InputExpr->getBeginLoc(), Exprs[i]->getType(), in ActOnGCCAsmStmt()
451 return targetDiag(InputExpr->getBeginLoc(), in ActOnGCCAsmStmt()
576 Expr *InputExpr = Exprs[InputOpNo]; in ActOnGCCAsmStmt() local
591 if (OutputExpr->isTypeDependent() || InputExpr->isTypeDependent()) in ActOnGCCAsmStmt()
594 QualType InTy = InputExpr->getType(); in ActOnGCCAsmStmt()
663 InputExpr->isEvaluatable(Context)) { in ActOnGCCAsmStmt()
666 InputExpr = ImpCastExprToType(InputExpr, OutTy, castKind).get(); in ActOnGCCAsmStmt()
667 Exprs[InputOpNo] = InputExpr; in ActOnGCCAsmStmt()
668 NS->setInputExpr(i, InputExpr); in ActOnGCCAsmStmt()
672 targetDiag(InputExpr->getBeginLoc(), diag::err_asm_tying_incompatible_types) in ActOnGCCAsmStmt()
674 << InputExpr->getSourceRange(); in ActOnGCCAsmStmt()