Lines Matching refs:InputExpr

381     Expr *InputExpr = Exprs[i];  in ActOnGCCAsmStmt()  local
383 if (InputExpr->getType()->isMemberPointerType()) in ActOnGCCAsmStmt()
384 return StmtError(Diag(InputExpr->getBeginLoc(), in ActOnGCCAsmStmt()
386 << InputExpr->getSourceRange()); in ActOnGCCAsmStmt()
389 if (CheckNakedParmReference(InputExpr, *this)) in ActOnGCCAsmStmt()
394 checkExprMemoryConstraintCompat(*this, InputExpr, Info, true)) in ActOnGCCAsmStmt()
399 if (CheckAsmLValue(InputExpr, *this)) in ActOnGCCAsmStmt()
400 return StmtError(Diag(InputExpr->getBeginLoc(), in ActOnGCCAsmStmt()
403 << InputExpr->getSourceRange()); in ActOnGCCAsmStmt()
409 InputExpr = Exprs[i] = Result.get(); in ActOnGCCAsmStmt()
412 if (!InputExpr->isValueDependent()) { in ActOnGCCAsmStmt()
414 if (InputExpr->EvaluateAsRValue(EVResult, Context, true)) { in ActOnGCCAsmStmt()
418 if (EVResult.Val.toIntegralConstant(IntResult, InputExpr->getType(), in ActOnGCCAsmStmt()
422 Diag(InputExpr->getBeginLoc(), in ActOnGCCAsmStmt()
425 << InputExpr->getSourceRange()); in ActOnGCCAsmStmt()
432 if (InputExpr->getType()->isVoidType()) { in ActOnGCCAsmStmt()
434 Diag(InputExpr->getBeginLoc(), diag::err_asm_invalid_type_in_input) in ActOnGCCAsmStmt()
435 << InputExpr->getType() << Info.getConstraintStr() in ActOnGCCAsmStmt()
436 << InputExpr->getSourceRange()); in ActOnGCCAsmStmt()
440 if (InputExpr->getType()->isBitIntType()) in ActOnGCCAsmStmt()
442 Diag(InputExpr->getBeginLoc(), diag::err_asm_invalid_type) in ActOnGCCAsmStmt()
443 << InputExpr->getType() << 1 /*Output*/ in ActOnGCCAsmStmt()
444 << InputExpr->getSourceRange()); in ActOnGCCAsmStmt()
453 if (RequireCompleteType(InputExpr->getBeginLoc(), Exprs[i]->getType(), in ActOnGCCAsmStmt()
460 return targetDiag(InputExpr->getBeginLoc(), in ActOnGCCAsmStmt()
600 Expr *InputExpr = Exprs[InputOpNo]; in ActOnGCCAsmStmt() local
615 if (OutputExpr->isTypeDependent() || InputExpr->isTypeDependent()) in ActOnGCCAsmStmt()
618 QualType InTy = InputExpr->getType(); in ActOnGCCAsmStmt()
696 InputExpr->isEvaluatable(Context)) { in ActOnGCCAsmStmt()
699 InputExpr = ImpCastExprToType(InputExpr, OutTy, castKind).get(); in ActOnGCCAsmStmt()
700 Exprs[InputOpNo] = InputExpr; in ActOnGCCAsmStmt()
701 NS->setInputExpr(i, InputExpr); in ActOnGCCAsmStmt()
705 targetDiag(InputExpr->getBeginLoc(), diag::err_asm_tying_incompatible_types) in ActOnGCCAsmStmt()
707 << InputExpr->getSourceRange(); in ActOnGCCAsmStmt()