Home
last modified time | relevance | path

Searched refs:XCHG (Results 1 – 19 of 19) sorted by relevance

/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPUSwLowerLDS.cpp652 } else if (AtomicCmpXchgInst *XCHG = dyn_cast<AtomicCmpXchgInst>(&Inst)) { in getLDSMemoryInstructions() local
653 if (XCHG->getPointerAddressSpace() == AMDGPUAS::LOCAL_ADDRESS) in getLDSMemoryInstructions()
720 } else if (AtomicCmpXchgInst *XCHG = dyn_cast<AtomicCmpXchgInst>(Inst)) { in translateLDSMemoryOperationsToGlobalMemory() local
721 Value *XCHGPtrOperand = XCHG->getPointerOperand(); in translateLDSMemoryOperationsToGlobalMemory()
725 Replacement, XCHG->getCompareOperand(), XCHG->getNewValOperand(), in translateLDSMemoryOperationsToGlobalMemory()
726 XCHG->getAlign(), XCHG->getSuccessOrdering(), in translateLDSMemoryOperationsToGlobalMemory()
727 XCHG->getFailureOrdering(), XCHG->getSyncScopeID()); in translateLDSMemoryOperationsToGlobalMemory()
728 NewXCHG->setVolatile(XCHG->isVolatile()); in translateLDSMemoryOperationsToGlobalMemory()
730 XCHG->replaceAllUsesWith(NewXCHG); in translateLDSMemoryOperationsToGlobalMemory()
731 XCHG->eraseFromParent(); in translateLDSMemoryOperationsToGlobalMemory()
H A DAMDGPUAsanInstrumentation.cpp233 } else if (AtomicCmpXchgInst *XCHG = dyn_cast<AtomicCmpXchgInst>(I)) { in getInterestingMemoryOperands() local
234 Interesting.emplace_back(I, XCHG->getPointerOperandIndex(), true, in getInterestingMemoryOperands()
235 XCHG->getCompareOperand()->getType(), in getInterestingMemoryOperands()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Instrumentation/
H A DMemProfInstrumentation.cpp315 } else if (AtomicCmpXchgInst *XCHG = dyn_cast<AtomicCmpXchgInst>(I)) { in isInterestingMemoryAccess() local
319 Access.AccessTy = XCHG->getCompareOperand()->getType(); in isInterestingMemoryAccess()
320 Access.Addr = XCHG->getPointerOperand(); in isInterestingMemoryAccess()
H A DHWAddressSanitizer.cpp882 } else if (AtomicCmpXchgInst *XCHG = dyn_cast<AtomicCmpXchgInst>(I)) { in getInterestingMemoryOperands() local
883 if (!ClInstrumentAtomics || ignoreAccess(ORE, I, XCHG->getPointerOperand())) in getInterestingMemoryOperands()
885 Interesting.emplace_back(I, XCHG->getPointerOperandIndex(), true, in getInterestingMemoryOperands()
886 XCHG->getCompareOperand()->getType(), in getInterestingMemoryOperands()
907 if (AtomicCmpXchgInst *XCHG = dyn_cast<AtomicCmpXchgInst>(I)) in getPointerOperandIndex() local
908 return XCHG->getPointerOperandIndex(); in getPointerOperandIndex()
H A DAddressSanitizer.cpp1492 } else if (AtomicCmpXchgInst *XCHG = dyn_cast<AtomicCmpXchgInst>(I)) { in getInterestingMemoryOperands() local
1493 if (!ClInstrumentAtomics || ignoreAccess(I, XCHG->getPointerOperand())) in getInterestingMemoryOperands()
1495 Interesting.emplace_back(I, XCHG->getPointerOperandIndex(), true, in getInterestingMemoryOperands()
1496 XCHG->getCompareOperand()->getType(), in getInterestingMemoryOperands()
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86ScheduleZnver2.td526 // XCHG.
532 def : InstRW<[Zn2WriteXCHG], (instregex "^XCHG(8|16|32|64)rr", "^XCHG(16|32|64)ar")>;
539 def : InstRW<[Zn2WriteXCHGrm, ReadAfterLd], (instregex "^XCHG(8|16|32|64)rm")>;
H A DX86ScheduleZnver1.td527 // XCHG.
533 def : InstRW<[ZnWriteXCHGrm, ReadAfterLd], (instregex "XCHG(8|16|32|64)rm")>;
H A DX86ScheduleAtom.td624 "XCHG(8|16|32|64)rm",
H A DX86ScheduleBtVer2.td460 // atomic XCHG operations. We need two writes because the instruction latency
H A DX86SchedSkylakeClient.td1287 def: InstRW<[SKLWriteResGroup143], (instregex "XCHG(8|16|32|64)rm")>;
H A DX86SchedBroadwell.td1146 def: InstRW<[BWWriteResGroup99], (instregex "XCHG(8|16|32|64)rm")>;
H A DX86SchedHaswell.td1308 def: InstRW<[HWWriteResGroup68], (instregex "XCHG(8|16|32|64)rm")>;
H A DX86SchedLunarlakeP.td1987 def : InstRW<[LNLPWriteResGroupX273, WriteRMW], (instregex "^XCHG(16|32)rm$")>;
H A DX86SchedSkylakeServer.td1827 def: InstRW<[SKXWriteResGroup157], (instregex "XCHG(8|16|32|64)rm")>;
H A DX86SchedAlderlakeP.td2365 def : InstRW<[ADLPWriteResGroup273, WriteRMW], (instregex "^XCHG(16|32)rm$")>;
H A DX86SchedIceLake.td1857 def: InstRW<[ICXWriteResGroup157], (instregex "XCHG(8|16|32|64)rm")>;
H A DX86InstrMisc.td850 defm XCHG : ATOMIC_SWAP<0x86, 0x87, "xchg", "atomic_swap">;
H A DX86SchedSapphireRapids.td5092 def : InstRW<[SPRWriteResGroup560, WriteRMW], (instregex "^XCHG(16|32)rm$")>;
/freebsd/contrib/llvm-project/llvm/lib/Target/BPF/
H A DBPFInstrInfo.td1066 class XCHG<BPFWidthModifer SizeOp, string OpcodeStr, PatFrag OpNode>
1105 def XCHGD : XCHG<BPF_DW, "64", atomic_swap_i64>;