Lines Matching defs:CASI
190 static unsigned getAtomicOpSize(AtomicCmpXchgInst *CASI) {
191 const DataLayout &DL = CASI->getDataLayout();
192 return DL.getTypeStoreSize(CASI->getCompareOperand()->getType());
243 auto *CASI = dyn_cast<AtomicCmpXchgInst>(I);
287 } else if (CASI) {
288 if (!atomicSizeSupported(TLI, CASI)) {
289 expandAtomicCASToLibcall(CASI);
295 if (CASI->getCompareOperand()->getType()->isPointerTy()) {
298 I = CASI = convertCmpXchgToIntegerType(CASI);
316 } else if (CASI &&
317 TLI->shouldExpandAtomicCmpXchgInIR(CASI) ==
319 (isReleaseOrStronger(CASI->getSuccessOrdering()) ||
320 isAcquireOrStronger(CASI->getSuccessOrdering()) ||
321 isAcquireOrStronger(CASI->getFailureOrdering()))) {
326 FenceOrdering = CASI->getMergedOrdering();
327 CASI->setSuccessOrdering(AtomicOrdering::Monotonic);
328 CASI->setFailureOrdering(AtomicOrdering::Monotonic);
341 else if (CASI && TLI->shouldExpandAtomicCmpXchgInIR(CASI) !=
344 FenceOrdering = CASI->getSuccessOrdering();
370 } else if (CASI)
371 MadeChange |= tryExpandAtomicCmpXchg(CASI);