@@ -806,40 +806,52 @@ define void @global_unordered(ptr addrspace(1) %a, ptr addrspace(1) %b, ptr addr
806
806
807
807
; CHECK-LABEL: global_unordered_volatile
808
808
define void @global_unordered_volatile (ptr addrspace (1 ) %a , ptr addrspace (1 ) %b , ptr addrspace (1 ) %c , ptr addrspace (1 ) %d , ptr addrspace (1 ) %e ) local_unnamed_addr {
809
- ; CHECK: ld.volatile.global.u8 %rs{{[0-9]+}}, [%rd{{[0-9]+}}]
809
+ ; SM60: ld.volatile.global.u8 %rs{{[0-9]+}}, [%rd{{[0-9]+}}]
810
+ ; SM70: ld.mmio.relaxed.sys.global.u8 %rs{{[0-9]+}}, [%rd{{[0-9]+}}]
810
811
%a.load = load atomic volatile i8 , ptr addrspace (1 ) %a unordered , align 1
811
812
%a.add = add i8 %a.load , 1
812
- ; CHECK: st.volatile.global.u8 [%rd{{[0-9]+}}], %rs{{[0-9]+}}
813
+ ; SM60: st.volatile.global.u8 [%rd{{[0-9]+}}], %rs{{[0-9]+}}
814
+ ; SM70: st.mmio.relaxed.sys.global.u8 [%rd{{[0-9]+}}], %rs{{[0-9]+}}
813
815
store atomic volatile i8 %a.add , ptr addrspace (1 ) %a unordered , align 1
814
816
815
- ; CHECK: ld.volatile.global.u16 %rs{{[0-9]+}}, [%rd{{[0-9]+}}]
817
+ ; SM60: ld.volatile.global.u16 %rs{{[0-9]+}}, [%rd{{[0-9]+}}]
818
+ ; SM70: ld.mmio.relaxed.sys.global.u16 %rs{{[0-9]+}}, [%rd{{[0-9]+}}]
816
819
%b.load = load atomic volatile i16 , ptr addrspace (1 ) %b unordered , align 2
817
820
%b.add = add i16 %b.load , 1
818
- ; CHECK: st.volatile.global.u16 [%rd{{[0-9]+}}], %rs{{[0-9]+}}
821
+ ; SM60: st.volatile.global.u16 [%rd{{[0-9]+}}], %rs{{[0-9]+}}
822
+ ; SM70: st.mmio.relaxed.sys.global.u16 [%rd{{[0-9]+}}], %rs{{[0-9]+}}
819
823
store atomic volatile i16 %b.add , ptr addrspace (1 ) %b unordered , align 2
820
824
821
- ; CHECK: ld.volatile.global.u32 %r{{[0-9]+}}, [%rd{{[0-9]+}}]
825
+ ; SM60: ld.volatile.global.u32 %r{{[0-9]+}}, [%rd{{[0-9]+}}]
826
+ ; SM70: ld.mmio.relaxed.sys.global.u32 %r{{[0-9]+}}, [%rd{{[0-9]+}}]
822
827
%c.load = load atomic volatile i32 , ptr addrspace (1 ) %c unordered , align 4
823
828
%c.add = add i32 %c.load , 1
824
- ; CHECK: st.volatile.global.u32 [%rd{{[0-9]+}}], %r{{[0-9]+}}
829
+ ; SM60: st.volatile.global.u32 [%rd{{[0-9]+}}], %r{{[0-9]+}}
830
+ ; SM70: st.mmio.relaxed.sys.global.u32 [%rd{{[0-9]+}}], %r{{[0-9]+}}
825
831
store atomic volatile i32 %c.add , ptr addrspace (1 ) %c unordered , align 4
826
832
827
- ; CHECK: ld.volatile.global.u64 %rd{{[0-9]+}}, [%rd{{[0-9]+}}]
833
+ ; SM60: ld.volatile.global.u64 %rd{{[0-9]+}}, [%rd{{[0-9]+}}]
834
+ ; SM70: ld.mmio.relaxed.sys.global.u64 %rd{{[0-9]+}}, [%rd{{[0-9]+}}]
828
835
%d.load = load atomic volatile i64 , ptr addrspace (1 ) %d unordered , align 8
829
836
%d.add = add i64 %d.load , 1
830
- ; CHECK: st.volatile.global.u64 [%rd{{[0-9]+}}], %rd{{[0-9]+}}
837
+ ; SM60: st.volatile.global.u64 [%rd{{[0-9]+}}], %rd{{[0-9]+}}
838
+ ; SM70: st.mmio.relaxed.sys.global.u64 [%rd{{[0-9]+}}], %rd{{[0-9]+}}
831
839
store atomic volatile i64 %d.add , ptr addrspace (1 ) %d unordered , align 8
832
840
833
- ; CHECK: ld.volatile.global.f32 %f{{[0-9]+}}, [%rd{{[0-9]+}}]
841
+ ; SM60: ld.volatile.global.f32 %f{{[0-9]+}}, [%rd{{[0-9]+}}]
842
+ ; SM70: ld.mmio.relaxed.sys.global.f32 %f{{[0-9]+}}, [%rd{{[0-9]+}}]
834
843
%e.load = load atomic volatile float , ptr addrspace (1 ) %e unordered , align 4
835
844
%e.add = fadd float %e.load , 1 .0
836
- ; CHECK: st.volatile.global.f32 [%rd{{[0-9]+}}], %f{{[0-9]+}}
845
+ ; SM60: st.volatile.global.f32 [%rd{{[0-9]+}}], %f{{[0-9]+}}
846
+ ; SM70: st.mmio.relaxed.sys.global.f32 [%rd{{[0-9]+}}], %f{{[0-9]+}}
837
847
store atomic volatile float %e.add , ptr addrspace (1 ) %e unordered , align 4
838
848
839
- ; CHECK: ld.volatile.global.f64 %fd{{[0-9]+}}, [%rd{{[0-9]+}}]
849
+ ; SM60: ld.volatile.global.f64 %fd{{[0-9]+}}, [%rd{{[0-9]+}}]
850
+ ; SM70: ld.mmio.relaxed.sys.global.f64 %fd{{[0-9]+}}, [%rd{{[0-9]+}}]
840
851
%f.load = load atomic volatile double , ptr addrspace (1 ) %e unordered , align 8
841
852
%f.add = fadd double %f.load , 1 .
842
- ; CHECK: st.volatile.global.f64 [%rd{{[0-9]+}}], %fd{{[0-9]+}}
853
+ ; SM60: st.volatile.global.f64 [%rd{{[0-9]+}}], %fd{{[0-9]+}}
854
+ ; SM70: st.mmio.relaxed.sys.global.f64 [%rd{{[0-9]+}}], %fd{{[0-9]+}}
843
855
store atomic volatile double %f.add , ptr addrspace (1 ) %e unordered , align 8
844
856
845
857
; TODO: LLVM IR Verifier does not support atomics on vector types.
0 commit comments