Home
last modified time | relevance | path

Searched refs:cmpxchg (Results 1 – 20 of 20) sorted by relevance

/freebsd/sys/dev/drm2/
H A Ddrm_lock.c199 prev = cmpxchg(lock, old, new); in drm_lock_take()
242 prev = cmpxchg(lock, old, new); in drm_lock_transfer()
275 prev = cmpxchg(lock, old, new); in drm_lock_free()
314 prev = cmpxchg(&s->lock->lock, old, new); in drm_notifier()
362 prev = cmpxchg(lock, old, DRM_KERNEL_CONTEXT); in drm_idlelock_release()
H A Ddrm_atomic.h76 #define cmpxchg(ptr, old, new) \ macro
/freebsd/contrib/llvm-project/openmp/runtime/src/
H A Dz_Windows_NT-586_asm.asm147 lock cmpxchg BYTE PTR [ecx], dl
172 lock cmpxchg WORD PTR [ecx], dx
197 lock cmpxchg DWORD PTR [ecx], edx
363 lock cmpxchg BYTE PTR [ecx], dl
386 lock cmpxchg WORD PTR [ecx], dx
409 lock cmpxchg DWORD PTR [ecx], edx
733 lock cmpxchg BYTE PTR [rcx], dl
761 lock cmpxchg WORD PTR [rcx], dx
789 lock cmpxchg DWORD PTR [rcx], edx
817 lock cmpxchg QWORD PTR [rcx], rdx
[all …]
/freebsd/sys/compat/linuxkpi/common/include/asm/
H A Datomic.h173 #define cmpxchg(ptr, old, new) ({ \ macro
219 #define cmpxchg64(...) cmpxchg(__VA_ARGS__)
220 #define cmpxchg_relaxed(...) cmpxchg(__VA_ARGS__)
/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DIntrinsicsLoongArch.td33 // TODO: Support cmpxchg on LA32.
47 // @llvm.loongarch.masked.cmpxchg.i64.<p>(
H A DIntrinsicsRISCV.td71 // @llvm.riscv.masked.cmpxchg.{i32,i64}.<p>(
/freebsd/contrib/llvm-project/compiler-rt/lib/sanitizer_common/
H A Dsanitizer_atomic_msvc.h184 lock cmpxchg [ecx], dl in atomic_compare_exchange_strong()
/freebsd/contrib/llvm-project/llvm/lib/Target/WebAssembly/
H A DWebAssemblyInstrAtomics.td440 // TODO LLVM IR's cmpxchg instruction returns a pair of {loaded value, success
465 WebAssemblyTerRMW<I32, "i32.atomic.rmw.cmpxchg", 0x48>;
467 WebAssemblyTerRMW<I64, "i64.atomic.rmw.cmpxchg", 0x49>;
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64InstrAtomics.td481 // Atomic cmpxchg for -O0
486 // STXR it can clear the exclusive monitor, causing all cmpxchg attempts to
492 // assume seq_cst, strong cmpxchg and omit clrex on failure.
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86InstrMisc.td923 "cmpxchg{b}\t{$src, $dst|$dst, $src}", []>, TB;
926 "cmpxchg{w}\t{$src, $dst|$dst, $src}", []>, TB, OpSize16;
929 "cmpxchg{l}\t{$src, $dst|$dst, $src}", []>, TB, OpSize32;
932 "cmpxchg{q}\t{$src, $dst|$dst, $src}", []>, TB;
939 "cmpxchg{b}\t{$src, $dst|$dst, $src}", []>, TB;
942 "cmpxchg{w}\t{$src, $dst|$dst, $src}", []>, TB, OpSize16;
945 "cmpxchg{l}\t{$src, $dst|$dst, $src}", []>, TB, OpSize32;
948 "cmpxchg{q}\t{$src, $dst|$dst, $src}", []>, TB;
H A DX86InstrCompiler.td1028 defm LCMPXCHG : LCMPXCHG_BinOp<0xB0, 0xB1, MRMDestMem, "cmpxchg", X86cas>;
/freebsd/contrib/llvm-project/llvm/include/llvm/Support/
H A DTargetOpcodes.def393 /// Generic atomic cmpxchg with internal success check.
396 /// Generic atomic cmpxchg.
/freebsd/contrib/llvm-project/llvm/lib/AsmParser/
H A DLLLexer.cpp897 INSTKEYWORD(cmpxchg, AtomicCmpXchg); in LexIdentifier()
/freebsd/sys/contrib/openzfs/config/
H A Dhost-cpu-c-abi.m441 dnl - Instructions that do not exist on all of these CPUs (cmpxchg,
/freebsd/sys/contrib/openzfs/module/os/linux/zfs/
H A Dzpl_xattr.c1494 if (cmpxchg(&acl_rel_tail, &a->next, in zpl_posix_acl_free()
/freebsd/contrib/llvm-project/llvm/include/llvm/Target/
H A DGenericOpcodes.td1267 // Generic atomic cmpxchg with internal success check. Expects a
1277 // Generic atomic cmpxchg. Expects a MachineMemOperand in addition to explicit
/freebsd/contrib/llvm-project/llvm/lib/Target/LoongArch/
H A DLoongArchInstrInfo.td2047 // These atomic cmpxchg PatFrags only care about the failure ordering.
2052 // define these PatFrags that will be used to define cmpxchg pats below.
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMInstrThumb.td1787 // Atomic cmpxchg for -O0
H A DARMInstrInfo.td6483 // Atomic cmpxchg for -O0
6488 // STXR it can clear the exclusive monitor, causing all cmpxchg attempts to
6494 // assume seq_cst, strong cmpxchg and omit clrex on failure.
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DSIInstructions.td3856 // Atomic cmpxchg. $cmpval ad $newval are packed in a single vector