Lines Matching refs:AO
223 bool AsValue, llvm::AtomicOrdering AO,
245 void EmitAtomicUpdate(llvm::AtomicOrdering AO,
250 void EmitAtomicUpdate(llvm::AtomicOrdering AO, RValue UpdateRVal,
264 llvm::AtomicOrdering AO, bool IsVolatile);
266 llvm::Value *EmitAtomicLoadOp(llvm::AtomicOrdering AO, bool IsVolatile,
285 EmitAtomicUpdateLibcall(llvm::AtomicOrdering AO,
289 void EmitAtomicUpdateOp(llvm::AtomicOrdering AO,
293 void EmitAtomicUpdateLibcall(llvm::AtomicOrdering AO, RValue UpdateRVal,
296 void EmitAtomicUpdateOp(llvm::AtomicOrdering AO, RValue UpdateRal,
1461 llvm::AtomicOrdering AO, bool) { in EmitAtomicLoadLibcall() argument
1468 RValue::get(llvm::ConstantInt::get(CGF.IntTy, (int)llvm::toCABI(AO))), in EmitAtomicLoadLibcall()
1473 llvm::Value *AtomicInfo::EmitAtomicLoadOp(llvm::AtomicOrdering AO, in EmitAtomicLoadOp() argument
1480 Load->setAtomic(AO); in EmitAtomicLoadOp()
1507 llvm::AtomicOrdering AO; in EmitAtomicLoad() local
1510 AO = llvm::AtomicOrdering::SequentiallyConsistent; in EmitAtomicLoad()
1512 AO = llvm::AtomicOrdering::Acquire; in EmitAtomicLoad()
1515 return EmitAtomicLoad(LV, SL, AO, IsVolatile, Slot); in EmitAtomicLoad()
1519 bool AsValue, llvm::AtomicOrdering AO, in EmitAtomicLoad() argument
1530 EmitAtomicLoadLibcall(TempAddr.emitRawPointer(CGF), AO, IsVolatile); in EmitAtomicLoad()
1538 auto *Load = EmitAtomicLoadOp(AO, IsVolatile); in EmitAtomicLoad()
1552 llvm::AtomicOrdering AO, bool IsVolatile, in EmitAtomicLoad() argument
1555 return Atomics.EmitAtomicLoad(resultSlot, loc, /*AsValue=*/true, AO, in EmitAtomicLoad()
1765 llvm::AtomicOrdering AO, const llvm::function_ref<RValue(RValue)> &UpdateOp, in EmitAtomicUpdateLibcall() argument
1767 auto Failure = llvm::AtomicCmpXchgInst::getStrongestFailureOrdering(AO); in EmitAtomicUpdateLibcall()
1771 EmitAtomicLoadLibcall(ExpectedAddr.emitRawPointer(CGF), AO, IsVolatile); in EmitAtomicUpdateLibcall()
1788 EmitAtomicCompareExchangeLibcall(ExpectedPtr, DesiredPtr, AO, Failure); in EmitAtomicUpdateLibcall()
1794 llvm::AtomicOrdering AO, const llvm::function_ref<RValue(RValue)> &UpdateOp, in EmitAtomicUpdateOp() argument
1796 auto Failure = llvm::AtomicCmpXchgInst::getStrongestFailureOrdering(AO); in EmitAtomicUpdateOp()
1824 auto Res = EmitAtomicCompareExchangeOp(PHI, DesiredVal, AO, Failure); in EmitAtomicUpdateOp()
1856 void AtomicInfo::EmitAtomicUpdateLibcall(llvm::AtomicOrdering AO, in EmitAtomicUpdateLibcall() argument
1858 auto Failure = llvm::AtomicCmpXchgInst::getStrongestFailureOrdering(AO); in EmitAtomicUpdateLibcall()
1862 EmitAtomicLoadLibcall(ExpectedAddr.emitRawPointer(CGF), AO, IsVolatile); in EmitAtomicUpdateLibcall()
1876 EmitAtomicCompareExchangeLibcall(ExpectedPtr, DesiredPtr, AO, Failure); in EmitAtomicUpdateLibcall()
1881 void AtomicInfo::EmitAtomicUpdateOp(llvm::AtomicOrdering AO, RValue UpdateRVal, in EmitAtomicUpdateOp() argument
1883 auto Failure = llvm::AtomicCmpXchgInst::getStrongestFailureOrdering(AO); in EmitAtomicUpdateOp()
1904 auto Res = EmitAtomicCompareExchangeOp(PHI, DesiredVal, AO, Failure); in EmitAtomicUpdateOp()
1911 llvm::AtomicOrdering AO, const llvm::function_ref<RValue(RValue)> &UpdateOp, in EmitAtomicUpdate() argument
1914 EmitAtomicUpdateLibcall(AO, UpdateOp, IsVolatile); in EmitAtomicUpdate()
1916 EmitAtomicUpdateOp(AO, UpdateOp, IsVolatile); in EmitAtomicUpdate()
1920 void AtomicInfo::EmitAtomicUpdate(llvm::AtomicOrdering AO, RValue UpdateRVal, in EmitAtomicUpdate() argument
1923 EmitAtomicUpdateLibcall(AO, UpdateRVal, IsVolatile); in EmitAtomicUpdate()
1925 EmitAtomicUpdateOp(AO, UpdateRVal, IsVolatile); in EmitAtomicUpdate()
1932 llvm::AtomicOrdering AO; in EmitAtomicStore() local
1934 AO = llvm::AtomicOrdering::SequentiallyConsistent; in EmitAtomicStore()
1936 AO = llvm::AtomicOrdering::Release; in EmitAtomicStore()
1939 return EmitAtomicStore(rvalue, lvalue, AO, IsVolatile, isInit); in EmitAtomicStore()
1948 llvm::AtomicOrdering AO, bool IsVolatile, in EmitAtomicStore() argument
1979 RValue::get(llvm::ConstantInt::get(IntTy, (int)llvm::toCABI(AO))), in EmitAtomicStore()
1998 if (AO == llvm::AtomicOrdering::Acquire) in EmitAtomicStore()
1999 AO = llvm::AtomicOrdering::Monotonic; in EmitAtomicStore()
2000 else if (AO == llvm::AtomicOrdering::AcquireRelease) in EmitAtomicStore()
2001 AO = llvm::AtomicOrdering::Release; in EmitAtomicStore()
2004 store->setAtomic(AO); in EmitAtomicStore()
2014 atomics.EmitAtomicUpdate(AO, rvalue, IsVolatile); in EmitAtomicStore()
2038 LValue LVal, llvm::AtomicOrdering AO, in EmitAtomicUpdate() argument
2041 Atomics.EmitAtomicUpdate(AO, UpdateOp, IsVolatile); in EmitAtomicUpdate()