Lines Matching refs:RValue

186     RValue convertAtomicTempToRValue(Address addr, AggValueSlot resultSlot,
190 llvm::Value *convertRValueToInt(RValue RVal) const;
192 RValue ConvertIntToValueOrAtomic(llvm::Value *IntVal,
197 void emitCopyIntoMemory(RValue rvalue) const;
212 RValue EmitAtomicLoad(AggValueSlot ResultSlot, SourceLocation Loc,
224 std::pair<RValue, llvm::Value *>
225 EmitAtomicCompareExchange(RValue Expected, RValue Desired,
236 const llvm::function_ref<RValue(RValue)> &UpdateOp,
240 void EmitAtomicUpdate(llvm::AtomicOrdering AO, RValue UpdateRVal,
244 Address materializeRValue(RValue rvalue) const;
275 const llvm::function_ref<RValue(RValue)> &UpdateOp,
279 const llvm::function_ref<RValue(RValue)> &UpdateOp,
282 void EmitAtomicUpdateLibcall(llvm::AtomicOrdering AO, RValue UpdateRVal,
285 void EmitAtomicUpdateOp(llvm::AtomicOrdering AO, RValue UpdateRal,
303 static RValue emitAtomicLibcall(CodeGenFunction &CGF, in emitAtomicLibcall()
777 Args.add(RValue::get(Val), ValTy); in AddDirectArgument()
780 Args.add(RValue::get(CGF.EmitCastToVoidPtr(Val)), in AddDirectArgument()
785 RValue CodeGenFunction::EmitAtomicExpr(AtomicExpr *E) { in EmitAtomicExpr()
801 return RValue::get(nullptr); in EmitAtomicExpr()
1033 Args.add(RValue::get(llvm::ConstantInt::get(SizeTy, Size)), in EmitAtomicExpr()
1053 Args.add(RValue::get(CastToGenericAddrSpace( in EmitAtomicExpr()
1086 RValue::get(CastToGenericAddrSpace( in EmitAtomicExpr()
1091 Args.add(RValue::get(Order), getContext().IntTy); in EmitAtomicExpr()
1239 Args.add(RValue::get(EmitCastToVoidPtr(Dest.getPointer())), in EmitAtomicExpr()
1244 Args.add(RValue::get(Order), in EmitAtomicExpr()
1247 Args.add(RValue::get(Scope), getContext().IntTy); in EmitAtomicExpr()
1254 RValue Res = emitAtomicLibcall(*this, LibCallName, RetTy, Args); in EmitAtomicExpr()
1281 return RValue::get(nullptr); in EmitAtomicExpr()
1332 return RValue::get(nullptr); in EmitAtomicExpr()
1404 return RValue::get(nullptr); in EmitAtomicExpr()
1434 RValue AtomicInfo::convertAtomicTempToRValue(Address addr, in convertAtomicTempToRValue()
1452 return RValue::get(CGF.Builder.CreateLoad(addr)); in convertAtomicTempToRValue()
1467 RValue AtomicInfo::ConvertIntToValueOrAtomic(llvm::Value *IntVal, in ConvertIntToValueOrAtomic()
1483 return RValue::get(CGF.EmitFromMemory(IntVal, ValueTy)); in ConvertIntToValueOrAtomic()
1485 return RValue::get(CGF.Builder.CreateIntToPtr(IntVal, ValTy)); in ConvertIntToValueOrAtomic()
1487 return RValue::get(CGF.Builder.CreateBitCast(IntVal, ValTy)); in ConvertIntToValueOrAtomic()
1514 Args.add(RValue::get(getAtomicSizeValue()), CGF.getContext().getSizeType()); in EmitAtomicLoadLibcall()
1515 Args.add(RValue::get(CGF.EmitCastToVoidPtr(getAtomicPointer())), in EmitAtomicLoadLibcall()
1517 Args.add(RValue::get(CGF.EmitCastToVoidPtr(AddForLoaded)), in EmitAtomicLoadLibcall()
1520 RValue::get(llvm::ConstantInt::get(CGF.IntTy, (int)llvm::toCABI(AO))), in EmitAtomicLoadLibcall()
1555 RValue CodeGenFunction::EmitAtomicLoad(LValue LV, SourceLocation SL, in EmitAtomicLoad()
1568 RValue AtomicInfo::EmitAtomicLoad(AggValueSlot ResultSlot, SourceLocation Loc, in EmitAtomicLoad()
1592 return RValue::getAggregate(Address::invalid(), false); in EmitAtomicLoad()
1601 RValue CodeGenFunction::EmitAtomicLoad(LValue src, SourceLocation loc, in EmitAtomicLoad()
1611 void AtomicInfo::emitCopyIntoMemory(RValue rvalue) const { in emitCopyIntoMemory()
1646 Address AtomicInfo::materializeRValue(RValue rvalue) const { in materializeRValue()
1659 llvm::Value *AtomicInfo::convertRValueToInt(RValue RVal) const { in convertRValueToInt()
1711 Args.add(RValue::get(getAtomicSizeValue()), CGF.getContext().getSizeType()); in EmitAtomicCompareExchangeLibcall()
1712 Args.add(RValue::get(CGF.EmitCastToVoidPtr(getAtomicPointer())), in EmitAtomicCompareExchangeLibcall()
1714 Args.add(RValue::get(CGF.EmitCastToVoidPtr(ExpectedAddr)), in EmitAtomicCompareExchangeLibcall()
1716 Args.add(RValue::get(CGF.EmitCastToVoidPtr(DesiredAddr)), in EmitAtomicCompareExchangeLibcall()
1718 Args.add(RValue::get( in EmitAtomicCompareExchangeLibcall()
1721 Args.add(RValue::get( in EmitAtomicCompareExchangeLibcall()
1730 std::pair<RValue, llvm::Value *> AtomicInfo::EmitAtomicCompareExchange( in EmitAtomicCompareExchange()
1731 RValue Expected, RValue Desired, llvm::AtomicOrdering Success, in EmitAtomicCompareExchange()
1760 EmitAtomicUpdateValue(CodeGenFunction &CGF, AtomicInfo &Atomics, RValue OldRVal, in EmitAtomicUpdateValue()
1761 const llvm::function_ref<RValue(RValue)> &UpdateOp, in EmitAtomicUpdateValue()
1763 RValue UpRVal; in EmitAtomicUpdateValue()
1804 RValue NewRVal = UpdateOp(UpRVal); in EmitAtomicUpdateValue()
1815 llvm::AtomicOrdering AO, const llvm::function_ref<RValue(RValue)> &UpdateOp, in EmitAtomicUpdateLibcall()
1844 llvm::AtomicOrdering AO, const llvm::function_ref<RValue(RValue)> &UpdateOp, in EmitAtomicUpdateOp()
1876 RValue UpdateRVal, Address DesiredAddr) { in EmitAtomicUpdateValue()
1902 RValue UpdateRVal, bool IsVolatile) { in EmitAtomicUpdateLibcall()
1926 void AtomicInfo::EmitAtomicUpdateOp(llvm::AtomicOrdering AO, RValue UpdateRVal, in EmitAtomicUpdateOp()
1956 llvm::AtomicOrdering AO, const llvm::function_ref<RValue(RValue)> &UpdateOp, in EmitAtomicUpdate()
1965 void AtomicInfo::EmitAtomicUpdate(llvm::AtomicOrdering AO, RValue UpdateRVal, in EmitAtomicUpdate()
1974 void CodeGenFunction::EmitAtomicStore(RValue rvalue, LValue lvalue, in EmitAtomicStore()
1992 void CodeGenFunction::EmitAtomicStore(RValue rvalue, LValue dest, in EmitAtomicStore()
2018 args.add(RValue::get(atomics.getAtomicSizeValue()), in EmitAtomicStore()
2020 args.add(RValue::get(EmitCastToVoidPtr(atomics.getAtomicPointer())), in EmitAtomicStore()
2022 args.add(RValue::get(EmitCastToVoidPtr(srcAddr.getPointer())), in EmitAtomicStore()
2025 RValue::get(llvm::ConstantInt::get(IntTy, (int)llvm::toCABI(AO))), in EmitAtomicStore()
2062 std::pair<RValue, llvm::Value *> CodeGenFunction::EmitAtomicCompareExchange( in EmitAtomicCompareExchange()
2063 LValue Obj, RValue Expected, RValue Desired, SourceLocation Loc, in EmitAtomicCompareExchange()
2082 const llvm::function_ref<RValue(RValue)> &UpdateOp, bool IsVolatile) { in EmitAtomicUpdate()
2093 atomics.emitCopyIntoMemory(RValue::get(value)); in EmitAtomicInit()
2099 atomics.emitCopyIntoMemory(RValue::getComplex(value)); in EmitAtomicInit()