Lines Matching defs:OutputExpr
291 Expr *OutputExpr = Exprs[i];
294 if (CheckNakedParmReference(OutputExpr, *this))
299 checkExprMemoryConstraintCompat(*this, OutputExpr, Info, false))
304 if (OutputExpr->getType()->isBitIntType())
306 Diag(OutputExpr->getBeginLoc(), diag::err_asm_invalid_type)
307 << OutputExpr->getType() << 0 /*Input*/
308 << OutputExpr->getSourceRange());
313 if (OutputExpr->isTypeDependent())
317 OutputExpr->isModifiableLvalue(Context, /*Loc=*/nullptr);
326 const Expr *LVal = OutputExpr->IgnoreParenNoopCasts(Context);
327 emitAndFixInvalidAsmCastLValue(LVal, OutputExpr, *this);
333 if (RequireCompleteType(OutputExpr->getBeginLoc(), Exprs[i]->getType(),
338 return StmtError(Diag(OutputExpr->getBeginLoc(),
340 << OutputExpr->getSourceRange());
343 unsigned Size = Context.getTypeSize(OutputExpr->getType());
346 targetDiag(OutputExpr->getBeginLoc(), diag::err_asm_invalid_output_size)
599 Expr *OutputExpr = Exprs[TiedTo];
615 if (OutputExpr->isTypeDependent() || InputExpr->isTypeDependent())
619 QualType OutTy = OutputExpr->getType();
683 targetDiag(OutputExpr->getExprLoc(), diag::err_store_value_to_reg);
706 << InTy << OutTy << OutputExpr->getSourceRange()