Lines Matching defs:CASI
190 static unsigned getAtomicOpSize(AtomicCmpXchgInst *CASI) {
191 const DataLayout &DL = CASI->getDataLayout();
192 return DL.getTypeStoreSize(CASI->getCompareOperand()->getType());
226 auto CASI = dyn_cast<AtomicCmpXchgInst>(I);
227 assert((LI || SI || RMWI || CASI) && "Unknown atomic instruction");
248 } else if (CASI) {
249 if (!atomicSizeSupported(TLI, CASI)) {
250 expandAtomicCASToLibcall(CASI);
270 } else if (CASI) {
273 if (CASI->getCompareOperand()->getType()->isPointerTy()) {
276 I = CASI = convertCmpXchgToIntegerType(CASI);
293 } else if (CASI &&
294 TLI->shouldExpandAtomicCmpXchgInIR(CASI) ==
296 (isReleaseOrStronger(CASI->getSuccessOrdering()) ||
297 isAcquireOrStronger(CASI->getSuccessOrdering()) ||
298 isAcquireOrStronger(CASI->getFailureOrdering()))) {
303 FenceOrdering = CASI->getMergedOrdering();
304 CASI->setSuccessOrdering(AtomicOrdering::Monotonic);
305 CASI->setFailureOrdering(AtomicOrdering::Monotonic);
318 else if (CASI && TLI->shouldExpandAtomicCmpXchgInIR(CASI) !=
321 FenceOrdering = CASI->getSuccessOrdering();
346 } else if (CASI)
347 MadeChange |= tryExpandAtomicCmpXchg(CASI);