reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1092 AtomicOrdering SuccessOrder = CI->getSuccessOrdering(); 1093 AtomicOrdering FailureOrder = CI->getFailureOrdering(); 1094 Value *Addr = CI->getPointerOperand(); 1095 BasicBlock *BB = CI->getParent(); 1102 bool ShouldInsertFencesForAtomic = TLI->shouldInsertFencesForAtomic(CI); 1115 bool HasReleasedLoadBB = !CI->isWeak() && ShouldInsertFencesForAtomic && 1122 bool UseUnconditionalReleaseBarrier = F->hasMinSize() && !CI->isWeak(); 1167 BasicBlock *ExitBB = BB->splitBasicBlock(CI->getIterator(), "cmpxchg.end"); 1180 IRBuilder<> Builder(CI); 1188 TLI->emitLeadingFence(Builder, CI, SuccessOrder); 1195 UnreleasedLoad, CI->getCompareOperand(), "should_store"); 1203 TLI->emitLeadingFence(Builder, CI, SuccessOrder); 1208 Builder, CI->getNewValOperand(), Addr, MemOpOrder); 1213 CI->isWeak() ? FailureBB : RetryBB); 1219 ShouldStore = Builder.CreateICmpEQ(SecondLoad, CI->getCompareOperand(), 1232 TLI->emitTrailingFence(Builder, CI, SuccessOrder); 1244 TLI->emitTrailingFence(Builder, CI, FailureOrder); 1282 for (auto User : CI->users()) { 1302 if (!CI->use_empty()) { 1306 Res = Builder.CreateInsertValue(UndefValue::get(CI->getType()), Loaded, 0); 1309 CI->replaceAllUsesWith(Res); 1312 CI->eraseFromParent();