Lines Matching refs:LValue

303   typedef llvm::function_ref<std::pair<LValue, LValue>(
1250 const LValue &lv) {
1326 LValue lvalue)
1529 llvm::DenseMap<const OpaqueValueExpr *, LValue> OpaqueLValues;
2167 void EmitLambdaVLACapture(const VariableArrayType *VAT, LValue LV) {
2206 void EmitInitializerForField(FieldDecl *Field, LValue LHS, Expr *Init);
2430 LValue MakeAddrLValue(Address Addr, QualType T,
2432 return LValue::MakeAddr(Addr, T, getContext(), LValueBaseInfo(Source),
2436 LValue MakeAddrLValue(Address Addr, QualType T, LValueBaseInfo BaseInfo,
2438 return LValue::MakeAddr(Addr, T, getContext(), BaseInfo, TBAAInfo);
2441 LValue MakeAddrLValue(llvm::Value *V, QualType T, CharUnits Alignment,
2443 return LValue::MakeAddr(Address(V, Alignment), T, getContext(),
2447 LValue MakeAddrLValue(llvm::Value *V, QualType T, CharUnits Alignment,
2449 return LValue::MakeAddr(Address(V, Alignment), T, getContext(),
2453 LValue MakeNaturalAlignPointeeAddrLValue(llvm::Value *V, QualType T);
2454 LValue MakeNaturalAlignAddrLValue(llvm::Value *V, QualType T);
2456 Address EmitLoadOfReference(LValue RefLVal,
2459 LValue EmitLoadOfReferenceLValue(LValue RefLVal);
2460 LValue EmitLoadOfReferenceLValue(Address RefAddr, QualType RefTy,
2463 LValue RefLVal = MakeAddrLValue(RefAddr, RefTy, LValueBaseInfo(Source),
2471 LValue EmitLoadOfPointerLValue(Address Ptr, const PointerType *PtrTy);
2609 void EmitExprAsInit(const Expr *init, const ValueDecl *D, LValue lvalue,
2640 void EmitAggregateAssign(LValue Dest, LValue Src, QualType EltTy) {
2645 void EmitAggregateCopyCtor(LValue Dest, LValue Src,
2657 void EmitAggregateCopy(LValue Dest, LValue Src, QualType EltTy,
2669 /// Given an opaque value expression, return its LValue mapping if it exists,
2671 LValue getOrCreateOpaqueLValueMapping(const OpaqueValueExpr *e);
2955 llvm::Value *EmitScalarPrePostIncDec(const UnaryOperator *E, LValue LV,
2957 ComplexPairTy EmitComplexPrePostIncDec(const UnaryOperator *E, LValue LV,
2981 void EmitScalarInit(const Expr *init, const ValueDecl *D, LValue lvalue,
3210 LValue EmitCoawaitLValue(const CoawaitExpr *E);
3214 LValue EmitCoyieldLValue(const CoyieldExpr *E);
3282 LValue InitCapturedStruct(const CapturedStmt &S);
3290 void emitOMPSimpleStore(LValue LVal, RValue RVal, QualType RValTy,
3333 LValue X, RValue E, BinaryOperatorKind BO, bool IsXLHSInRHSPart,
3608 LValue EmitOMPSharedLValue(const Expr *E);
3669 // LValue Expression Emission
3686 LValue EmitUnsupportedLValue(const Expr *E,
3693 /// reference. In either case, the LLVM Value* in the LValue structure is
3705 LValue EmitLValue(const Expr *E);
3710 LValue EmitCheckedLValue(const Expr *E, TypeCheckKind TCK);
3715 void EmitAtomicInit(Expr *E, LValue lvalue);
3717 bool LValueIsSuitableForInlineAtomic(LValue Src);
3719 RValue EmitAtomicLoad(LValue LV, SourceLocation SL,
3722 RValue EmitAtomicLoad(LValue lvalue, SourceLocation loc,
3726 void EmitAtomicStore(RValue rvalue, LValue lvalue, bool isInit);
3728 void EmitAtomicStore(RValue rvalue, LValue lvalue, llvm::AtomicOrdering AO,
3732 LValue Obj, RValue Expected, RValue Desired, SourceLocation Loc,
3739 void EmitAtomicUpdate(LValue LVal, llvm::AtomicOrdering AO,
3778 llvm::Value *EmitLoadOfScalar(LValue lvalue, SourceLocation Loc);
3801 void EmitStoreOfScalar(llvm::Value *value, LValue lvalue, bool isInit=false);
3806 RValue EmitLoadOfLValue(LValue V, SourceLocation Loc);
3807 RValue EmitLoadOfExtVectorElementLValue(LValue V);
3808 RValue EmitLoadOfBitfieldLValue(LValue LV, SourceLocation Loc);
3809 RValue EmitLoadOfGlobalRegLValue(LValue LV);
3814 void EmitStoreThroughLValue(RValue Src, LValue Dst, bool isInit = false);
3815 void EmitStoreThroughExtVectorComponentLValue(RValue Src, LValue Dst);
3816 void EmitStoreThroughGlobalRegLValue(RValue Src, LValue Dst);
3824 void EmitStoreThroughBitfieldLValue(RValue Src, LValue Dst,
3828 LValue EmitComplexAssignmentLValue(const BinaryOperator *E);
3829 LValue EmitComplexCompoundAssignmentLValue(const CompoundAssignOperator *E);
3830 LValue EmitScalarCompoundAssignWithComplex(const CompoundAssignOperator *E,
3834 LValue EmitBinaryOperatorLValue(const BinaryOperator *E);
3835 LValue EmitCompoundAssignmentLValue(const CompoundAssignOperator *E);
3837 LValue EmitCallExprLValue(const CallExpr *E);
3839 LValue EmitVAArgExprLValue(const VAArgExpr *E);
3840 LValue EmitDeclRefLValue(const DeclRefExpr *E);
3841 LValue EmitStringLiteralLValue(const StringLiteral *E);
3842 LValue EmitObjCEncodeExprLValue(const ObjCEncodeExpr *E);
3843 LValue EmitPredefinedLValue(const PredefinedExpr *E);
3844 LValue EmitUnaryOpLValue(const UnaryOperator *E);
3845 LValue EmitArraySubscriptExpr(const ArraySubscriptExpr *E,
3847 LValue EmitMatrixSubscriptExpr(const MatrixSubscriptExpr *E);
3848 LValue EmitOMPArraySectionExpr(const OMPArraySectionExpr *E,
3850 LValue EmitExtVectorElementExpr(const ExtVectorElementExpr *E);
3851 LValue EmitMemberExpr(const MemberExpr *E);
3852 LValue EmitObjCIsaExpr(const ObjCIsaExpr *E);
3853 LValue EmitCompoundLiteralLValue(const CompoundLiteralExpr *E);
3854 LValue EmitInitListLValue(const InitListExpr *E);
3855 LValue EmitConditionalOperatorLValue(const AbstractConditionalOperator *E);
3856 LValue EmitCastLValue(const CastExpr *E);
3857 LValue EmitMaterializeTemporaryExpr(const MaterializeTemporaryExpr *E);
3858 LValue EmitOpaqueValueLValue(const OpaqueValueExpr *e);
3860 Address EmitExtVectorElementLValue(LValue V);
3862 RValue EmitRValueForField(LValue LV, const FieldDecl *FD, SourceLocation Loc);
3886 LValue getReferenceLValue(CodeGenFunction &CGF, Expr *refExpr) const {
3904 LValue EmitPseudoObjectLValue(const PseudoObjectExpr *e);
3908 LValue EmitLValueForField(LValue Base, const FieldDecl* Field);
3909 LValue EmitLValueForLambdaField(const FieldDecl *Field);
3914 LValue EmitLValueForFieldInitialization(LValue Base,
3917 LValue EmitLValueForIvar(QualType ObjectTy,
3921 LValue EmitCXXConstructLValue(const CXXConstructExpr *E);
3922 LValue EmitCXXBindTemporaryLValue(const CXXBindTemporaryExpr *E);
3923 LValue EmitCXXTypeidLValue(const CXXTypeidExpr *E);
3924 LValue EmitCXXUuidofLValue(const CXXUuidofExpr *E);
3926 LValue EmitObjCMessageExprLValue(const ObjCMessageExpr *E);
3927 LValue EmitObjCIvarRefLValue(const ObjCIvarRefExpr *E);
3928 LValue EmitStmtExprLValue(const StmtExpr *E);
3929 LValue EmitPointerToDataMemberBinaryExpr(const BinaryOperator *E);
3930 LValue EmitObjCSelectorLValue(const ObjCSelectorExpr *E);
4009 void defaultInitNonTrivialCStructVar(LValue Dst);
4010 void callCStructDefaultConstructor(LValue Dst);
4011 void callCStructDestructor(LValue Dst);
4012 void callCStructCopyConstructor(LValue Dst, LValue Src);
4013 void callCStructMoveConstructor(LValue Dst, LValue Src);
4014 void callCStructCopyAssignmentOperator(LValue Dst, LValue Src);
4015 void callCStructMoveAssignmentOperator(LValue Dst, LValue Src);
4227 llvm::Value *EmitARCStoreStrong(LValue lvalue, llvm::Value *value,
4247 std::pair<LValue,llvm::Value*>
4249 std::pair<LValue,llvm::Value*>
4251 std::pair<LValue,llvm::Value*>
4317 /// aggregate type into a temporary LValue.
4318 LValue EmitAggExprToLValue(const Expr *E);
4336 void EmitComplexExprIntoLValue(const Expr *E, LValue dest, bool isInit);
4339 void EmitStoreOfComplex(ComplexPairTy V, LValue dest, bool isInit);
4342 ComplexPairTy EmitLoadOfComplex(LValue src, SourceLocation loc);
4495 void EmitNullabilityCheck(LValue LHS, llvm::Value *RHS, SourceLocation Loc);
4610 void ExpandTypeFromArgs(QualType Ty, LValue Dst,
4624 LValue InputValue, QualType InputType,