Lines Matching refs:LValue
278 typedef llvm::function_ref<std::pair<LValue, LValue>(
1103 const LValue &lv) {
1179 LValue lvalue)
1373 llvm::DenseMap<const OpaqueValueExpr *, LValue> OpaqueLValues;
1875 void EmitInitializerForField(FieldDecl *Field, LValue LHS, Expr *Init);
2099 LValue MakeAddrLValue(Address Addr, QualType T,
2101 return LValue::MakeAddr(Addr, T, getContext(), LValueBaseInfo(Source),
2105 LValue MakeAddrLValue(Address Addr, QualType T, LValueBaseInfo BaseInfo,
2107 return LValue::MakeAddr(Addr, T, getContext(), BaseInfo, TBAAInfo);
2110 LValue MakeAddrLValue(llvm::Value *V, QualType T, CharUnits Alignment,
2112 return LValue::MakeAddr(Address(V, Alignment), T, getContext(),
2116 LValue MakeAddrLValue(llvm::Value *V, QualType T, CharUnits Alignment,
2118 return LValue::MakeAddr(Address(V, Alignment), T, getContext(),
2122 LValue MakeNaturalAlignPointeeAddrLValue(llvm::Value *V, QualType T);
2123 LValue MakeNaturalAlignAddrLValue(llvm::Value *V, QualType T);
2132 Address EmitLoadOfReference(LValue RefLVal,
2135 LValue EmitLoadOfReferenceLValue(LValue RefLVal);
2136 LValue EmitLoadOfReferenceLValue(Address RefAddr, QualType RefTy,
2139 LValue RefLVal = MakeAddrLValue(RefAddr, RefTy, LValueBaseInfo(Source),
2147 LValue EmitLoadOfPointerLValue(Address Ptr, const PointerType *PtrTy);
2284 void EmitExprAsInit(const Expr *init, const ValueDecl *D, LValue lvalue,
2322 void EmitAggregateAssign(LValue Dest, LValue Src, QualType EltTy) {
2327 void EmitAggregateCopyCtor(LValue Dest, LValue Src,
2339 void EmitAggregateCopy(LValue Dest, LValue Src, QualType EltTy,
2353 LValue getOrCreateOpaqueLValueMapping(const OpaqueValueExpr *e);
2632 llvm::Value *EmitScalarPrePostIncDec(const UnaryOperator *E, LValue LV,
2634 ComplexPairTy EmitComplexPrePostIncDec(const UnaryOperator *E, LValue LV,
2655 void EmitScalarInit(const Expr *init, const ValueDecl *D, LValue lvalue,
2888 LValue EmitCoawaitLValue(const CoawaitExpr *E);
2892 LValue EmitCoyieldLValue(const CoyieldExpr *E);
2958 LValue InitCapturedStruct(const CapturedStmt &S);
2965 void emitOMPSimpleStore(LValue LVal, RValue RVal, QualType RValTy,
3008 LValue X, RValue E, BinaryOperatorKind BO, bool IsXLHSInRHSPart,
3252 LValue EmitOMPSharedLValue(const Expr *E);
3327 LValue EmitUnsupportedLValue(const Expr *E,
3346 LValue EmitLValue(const Expr *E);
3351 LValue EmitCheckedLValue(const Expr *E, TypeCheckKind TCK);
3356 void EmitAtomicInit(Expr *E, LValue lvalue);
3358 bool LValueIsSuitableForInlineAtomic(LValue Src);
3360 RValue EmitAtomicLoad(LValue LV, SourceLocation SL,
3363 RValue EmitAtomicLoad(LValue lvalue, SourceLocation loc,
3367 void EmitAtomicStore(RValue rvalue, LValue lvalue, bool isInit);
3369 void EmitAtomicStore(RValue rvalue, LValue lvalue, llvm::AtomicOrdering AO,
3373 LValue Obj, RValue Expected, RValue Desired, SourceLocation Loc,
3380 void EmitAtomicUpdate(LValue LVal, llvm::AtomicOrdering AO,
3419 llvm::Value *EmitLoadOfScalar(LValue lvalue, SourceLocation Loc);
3442 void EmitStoreOfScalar(llvm::Value *value, LValue lvalue, bool isInit=false);
3447 RValue EmitLoadOfLValue(LValue V, SourceLocation Loc);
3448 RValue EmitLoadOfExtVectorElementLValue(LValue V);
3449 RValue EmitLoadOfBitfieldLValue(LValue LV, SourceLocation Loc);
3450 RValue EmitLoadOfGlobalRegLValue(LValue LV);
3455 void EmitStoreThroughLValue(RValue Src, LValue Dst, bool isInit = false);
3456 void EmitStoreThroughExtVectorComponentLValue(RValue Src, LValue Dst);
3457 void EmitStoreThroughGlobalRegLValue(RValue Src, LValue Dst);
3465 void EmitStoreThroughBitfieldLValue(RValue Src, LValue Dst,
3469 LValue EmitComplexAssignmentLValue(const BinaryOperator *E);
3470 LValue EmitComplexCompoundAssignmentLValue(const CompoundAssignOperator *E);
3471 LValue EmitScalarCompoundAssignWithComplex(const CompoundAssignOperator *E,
3475 LValue EmitBinaryOperatorLValue(const BinaryOperator *E);
3476 LValue EmitCompoundAssignmentLValue(const CompoundAssignOperator *E);
3478 LValue EmitCallExprLValue(const CallExpr *E);
3480 LValue EmitVAArgExprLValue(const VAArgExpr *E);
3481 LValue EmitDeclRefLValue(const DeclRefExpr *E);
3482 LValue EmitStringLiteralLValue(const StringLiteral *E);
3483 LValue EmitObjCEncodeExprLValue(const ObjCEncodeExpr *E);
3484 LValue EmitPredefinedLValue(const PredefinedExpr *E);
3485 LValue EmitUnaryOpLValue(const UnaryOperator *E);
3486 LValue EmitArraySubscriptExpr(const ArraySubscriptExpr *E,
3488 LValue EmitOMPArraySectionExpr(const OMPArraySectionExpr *E,
3490 LValue EmitExtVectorElementExpr(const ExtVectorElementExpr *E);
3491 LValue EmitMemberExpr(const MemberExpr *E);
3492 LValue EmitObjCIsaExpr(const ObjCIsaExpr *E);
3493 LValue EmitCompoundLiteralLValue(const CompoundLiteralExpr *E);
3494 LValue EmitInitListLValue(const InitListExpr *E);
3495 LValue EmitConditionalOperatorLValue(const AbstractConditionalOperator *E);
3496 LValue EmitCastLValue(const CastExpr *E);
3497 LValue EmitMaterializeTemporaryExpr(const MaterializeTemporaryExpr *E);
3498 LValue EmitOpaqueValueLValue(const OpaqueValueExpr *e);
3500 Address EmitExtVectorElementLValue(LValue V);
3502 RValue EmitRValueForField(LValue LV, const FieldDecl *FD, SourceLocation Loc);
3526 LValue getReferenceLValue(CodeGenFunction &CGF, Expr *refExpr) const {
3544 LValue EmitPseudoObjectLValue(const PseudoObjectExpr *e);
3548 LValue EmitLValueForField(LValue Base, const FieldDecl* Field);
3549 LValue EmitLValueForLambdaField(const FieldDecl *Field);
3554 LValue EmitLValueForFieldInitialization(LValue Base,
3557 LValue EmitLValueForIvar(QualType ObjectTy,
3561 LValue EmitCXXConstructLValue(const CXXConstructExpr *E);
3562 LValue EmitCXXBindTemporaryLValue(const CXXBindTemporaryExpr *E);
3563 LValue EmitLambdaLValue(const LambdaExpr *E);
3564 LValue EmitCXXTypeidLValue(const CXXTypeidExpr *E);
3565 LValue EmitCXXUuidofLValue(const CXXUuidofExpr *E);
3567 LValue EmitObjCMessageExprLValue(const ObjCMessageExpr *E);
3568 LValue EmitObjCIvarRefLValue(const ObjCIvarRefExpr *E);
3569 LValue EmitStmtExprLValue(const StmtExpr *E);
3570 LValue EmitPointerToDataMemberBinaryExpr(const BinaryOperator *E);
3571 LValue EmitObjCSelectorLValue(const ObjCSelectorExpr *E);
3647 void defaultInitNonTrivialCStructVar(LValue Dst);
3648 void callCStructDefaultConstructor(LValue Dst);
3649 void callCStructDestructor(LValue Dst);
3650 void callCStructCopyConstructor(LValue Dst, LValue Src);
3651 void callCStructMoveConstructor(LValue Dst, LValue Src);
3652 void callCStructCopyAssignmentOperator(LValue Dst, LValue Src);
3653 void callCStructMoveAssignmentOperator(LValue Dst, LValue Src);
3797 llvm::Value *EmitARCStoreStrong(LValue lvalue, llvm::Value *value,
3817 std::pair<LValue,llvm::Value*>
3819 std::pair<LValue,llvm::Value*>
3821 std::pair<LValue,llvm::Value*>
3884 LValue EmitAggExprToLValue(const Expr *E);
3898 void EmitComplexExprIntoLValue(const Expr *E, LValue dest, bool isInit);
3901 void EmitStoreOfComplex(ComplexPairTy V, LValue dest, bool isInit);
3904 ComplexPairTy EmitLoadOfComplex(LValue src, SourceLocation loc);
4046 void EmitNullabilityCheck(LValue LHS, llvm::Value *RHS, SourceLocation Loc);
4155 void ExpandTypeFromArgs(QualType Ty, LValue Dst,
4169 LValue InputValue, QualType InputType,