Lines Matching refs:AO
213 bool AsValue, llvm::AtomicOrdering AO,
233 void EmitAtomicUpdate(llvm::AtomicOrdering AO,
238 void EmitAtomicUpdate(llvm::AtomicOrdering AO, RValue UpdateRVal,
247 translateAtomicOrdering(const llvm::AtomicOrdering AO);
257 llvm::AtomicOrdering AO, bool IsVolatile);
259 llvm::Value *EmitAtomicLoadOp(llvm::AtomicOrdering AO, bool IsVolatile);
273 EmitAtomicUpdateLibcall(llvm::AtomicOrdering AO,
277 void EmitAtomicUpdateOp(llvm::AtomicOrdering AO,
281 void EmitAtomicUpdateLibcall(llvm::AtomicOrdering AO, RValue UpdateRVal,
284 void EmitAtomicUpdateOp(llvm::AtomicOrdering AO, RValue UpdateRal,
290 AtomicInfo::translateAtomicOrdering(const llvm::AtomicOrdering AO) { in translateAtomicOrdering() argument
291 switch (AO) { in translateAtomicOrdering()
1252 llvm::AtomicOrdering AO, bool) { in EmitAtomicLoadLibcall() argument
1261 llvm::ConstantInt::get(CGF.IntTy, translateAtomicOrdering(AO))), in EmitAtomicLoadLibcall()
1266 llvm::Value *AtomicInfo::EmitAtomicLoadOp(llvm::AtomicOrdering AO, in EmitAtomicLoadOp() argument
1271 Load->setAtomic(AO); in EmitAtomicLoadOp()
1306 llvm::AtomicOrdering AO; in EmitAtomicLoad() local
1309 AO = llvm::SequentiallyConsistent; in EmitAtomicLoad()
1311 AO = llvm::Acquire; in EmitAtomicLoad()
1314 return EmitAtomicLoad(LV, SL, AO, IsVolatile, Slot); in EmitAtomicLoad()
1318 bool AsValue, llvm::AtomicOrdering AO, in EmitAtomicLoad() argument
1329 EmitAtomicLoadLibcall(TempAddr.getPointer(), AO, IsVolatile); in EmitAtomicLoad()
1337 auto *Load = EmitAtomicLoadOp(AO, IsVolatile); in EmitAtomicLoad()
1351 llvm::AtomicOrdering AO, bool IsVolatile, in EmitAtomicLoad() argument
1354 return Atomics.EmitAtomicLoad(resultSlot, loc, /*AsValue=*/true, AO, in EmitAtomicLoad()
1565 llvm::AtomicOrdering AO, const llvm::function_ref<RValue(RValue)> &UpdateOp, in EmitAtomicUpdateLibcall() argument
1567 auto Failure = llvm::AtomicCmpXchgInst::getStrongestFailureOrdering(AO); in EmitAtomicUpdateLibcall()
1571 EmitAtomicLoadLibcall(ExpectedAddr.getPointer(), AO, IsVolatile); in EmitAtomicUpdateLibcall()
1588 AO, Failure); in EmitAtomicUpdateLibcall()
1594 llvm::AtomicOrdering AO, const llvm::function_ref<RValue(RValue)> &UpdateOp, in EmitAtomicUpdateOp() argument
1596 auto Failure = llvm::AtomicCmpXchgInst::getStrongestFailureOrdering(AO); in EmitAtomicUpdateOp()
1599 auto *OldVal = EmitAtomicLoadOp(AO, IsVolatile); in EmitAtomicUpdateOp()
1619 auto Res = EmitAtomicCompareExchangeOp(PHI, DesiredVal, AO, Failure); in EmitAtomicUpdateOp()
1652 void AtomicInfo::EmitAtomicUpdateLibcall(llvm::AtomicOrdering AO, in EmitAtomicUpdateLibcall() argument
1654 auto Failure = llvm::AtomicCmpXchgInst::getStrongestFailureOrdering(AO); in EmitAtomicUpdateLibcall()
1658 EmitAtomicLoadLibcall(ExpectedAddr.getPointer(), AO, IsVolatile); in EmitAtomicUpdateLibcall()
1672 AO, Failure); in EmitAtomicUpdateLibcall()
1677 void AtomicInfo::EmitAtomicUpdateOp(llvm::AtomicOrdering AO, RValue UpdateRVal, in EmitAtomicUpdateOp() argument
1679 auto Failure = llvm::AtomicCmpXchgInst::getStrongestFailureOrdering(AO); in EmitAtomicUpdateOp()
1682 auto *OldVal = EmitAtomicLoadOp(AO, IsVolatile); in EmitAtomicUpdateOp()
1700 auto Res = EmitAtomicCompareExchangeOp(PHI, DesiredVal, AO, Failure); in EmitAtomicUpdateOp()
1707 llvm::AtomicOrdering AO, const llvm::function_ref<RValue(RValue)> &UpdateOp, in EmitAtomicUpdate() argument
1710 EmitAtomicUpdateLibcall(AO, UpdateOp, IsVolatile); in EmitAtomicUpdate()
1712 EmitAtomicUpdateOp(AO, UpdateOp, IsVolatile); in EmitAtomicUpdate()
1716 void AtomicInfo::EmitAtomicUpdate(llvm::AtomicOrdering AO, RValue UpdateRVal, in EmitAtomicUpdate() argument
1719 EmitAtomicUpdateLibcall(AO, UpdateRVal, IsVolatile); in EmitAtomicUpdate()
1721 EmitAtomicUpdateOp(AO, UpdateRVal, IsVolatile); in EmitAtomicUpdate()
1728 llvm::AtomicOrdering AO; in EmitAtomicStore() local
1730 AO = llvm::SequentiallyConsistent; in EmitAtomicStore()
1732 AO = llvm::Release; in EmitAtomicStore()
1735 return EmitAtomicStore(rvalue, lvalue, AO, IsVolatile, isInit); in EmitAtomicStore()
1744 llvm::AtomicOrdering AO, bool IsVolatile, in EmitAtomicStore() argument
1776 IntTy, AtomicInfo::translateAtomicOrdering(AO))), in EmitAtomicStore()
1794 store->setAtomic(AO); in EmitAtomicStore()
1805 atomics.EmitAtomicUpdate(AO, rvalue, IsVolatile); in EmitAtomicStore()
1829 LValue LVal, llvm::AtomicOrdering AO, in EmitAtomicUpdate() argument
1832 Atomics.EmitAtomicUpdate(AO, UpdateOp, IsVolatile); in EmitAtomicUpdate()