Files
TheRock/compiler/spirv-llvm-translator/test/transcoding/atomics_int64.spt
T
derek.holloway 7502bf64a4
CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
Flatten subprojects into a single base monorepo
2026-09-02 16:34:47 -07:00

84 lines
2.4 KiB
Cheetah

119734787 65536 393230 34 0
2 Capability Addresses
2 Capability Linkage
2 Capability Kernel
2 Capability Int64
2 Capability Int64Atomics
2 Capability GenericPointer
5 ExtInstImport 1 "OpenCL.std"
3 MemoryModel 1 2
3 Source 3 200000
5 Decorate 8 LinkageAttributes "foo" Export
4 TypeInt 3 64 0
4 TypeInt 5 32 0
4 Constant 5 17 1
4 Constant 5 18 16
2 TypeVoid 2
4 TypePointer 4 8 3
4 TypePointer 6 8 5
9 TypeFunction 7 2 4 4 6 3 3 3
2 TypeBool 32
5 Function 2 8 0 7
3 FunctionParameter 4 9
3 FunctionParameter 4 10
3 FunctionParameter 6 11
3 FunctionParameter 3 12
3 FunctionParameter 3 13
3 FunctionParameter 3 14
2 Label 15
6 AtomicLoad 3 16 9 17 18
5 AtomicStore 9 17 18 12
7 AtomicExchange 3 19 9 17 18 12
9 AtomicCompareExchange 3 20 9 17 18 18 12 14
6 AtomicIIncrement 3 21 9 17 18
6 AtomicIDecrement 3 22 9 17 18
7 AtomicIAdd 3 23 9 17 18 12
7 AtomicISub 3 24 9 17 18 12
7 AtomicSMin 3 25 9 17 18 12
7 AtomicUMin 3 26 10 17 18 13
7 AtomicSMax 3 27 9 17 18 12
7 AtomicUMax 3 28 10 17 18 13
7 AtomicAnd 3 29 9 17 18 12
7 AtomicOr 3 30 9 17 18 12
7 AtomicXor 3 31 9 17 18 12
6 AtomicFlagTestAndSet 32 33 11 17 18
4 AtomicFlagClear 11 17 18
1 Return
1 FunctionEnd
; RUN: llvm-spirv --to-binary %s -o %t.spv
; RUN: spirv-val %t.spv
; RUN: llvm-spirv --spirv-target-env=CL1.2 -r %t.spv -o - | llvm-dis -o %t.ll
; RUN: FileCheck %s < %t.ll
; OpAtomicLoad is emulated via atom_add(*p, 0)
; CHECK: call spir_func i64 @_Z8atom_addPU3AS4Vll
; OpAtomicStore is emulated via atom_xchg(*p, val)
; CHECK: call spir_func i64 @_Z9atom_xchgPU3AS4Vll
; CHECK: call spir_func i64 @_Z9atom_xchgPU3AS4Vll
; CHECK: call spir_func i64 @_Z12atom_cmpxchgPU3AS4Vlll
; CHECK: call spir_func i64 @_Z8atom_incPU3AS4Vl
; CHECK: call spir_func i64 @_Z8atom_decPU3AS4Vl
; CHECK: call spir_func i64 @_Z8atom_addPU3AS4Vll
; CHECK: call spir_func i64 @_Z8atom_subPU3AS4Vll
; CHECK: call spir_func i64 @_Z8atom_minPU3AS4Vll
; CHECK: call spir_func i64 @_Z8atom_minPU3AS4Vmm
; CHECK: call spir_func i64 @_Z8atom_maxPU3AS4Vll
; CHECK: call spir_func i64 @_Z8atom_maxPU3AS4Vmm
; CHECK: call spir_func i64 @_Z8atom_andPU3AS4Vll
; CHECK: call spir_func i64 @_Z7atom_orPU3AS4Vll
; CHECK: call spir_func i64 @_Z8atom_xorPU3AS4Vll
; OpAtomicFlagTestAndSet is emulated via atomic_xchg(*p, 1)
; CHECK: call spir_func i32 @_Z11atomic_xchg
; OpAtomicFlagClear is emulated via atomic_xchg(*p, 0)
; CHECK: call spir_func i32 @_Z11atomic_xchg