|
1 | 1 | ; RUN: llc -mtriple=amdgcn -verify-machineinstrs < %s | FileCheck -check-prefix=GCN -check-prefix=SI %s |
2 | 2 | ; RUN: llc -mtriple=amdgcn -mcpu=tonga -mattr=-flat-for-global -verify-machineinstrs < %s | FileCheck -check-prefix=GCN -check-prefix=VI %s |
3 | 3 | ; RUN: llc -mtriple=amdgcn -mcpu=gfx900 -mattr=-flat-for-global -verify-machineinstrs < %s | FileCheck -check-prefix=GCN -check-prefix=GFX9 %s |
| 4 | +; RUN: llc -mtriple=amdgcn -mcpu=gfx1100 -mattr=-flat-for-global,-real-true16 -verify-machineinstrs < %s | FileCheck -check-prefix=GFX11-FAKE16 %s |
| 5 | +; RUN: llc -mtriple=amdgcn -mcpu=gfx1100 -mattr=-flat-for-global,+real-true16 -verify-machineinstrs < %s | FileCheck -check-prefix=GFX11-TRUE16 %s |
4 | 6 |
|
5 | 7 | declare i32 @llvm.amdgcn.workitem.id.x() #0 |
6 | 8 |
|
@@ -84,6 +86,8 @@ define amdgpu_kernel void @v_test_umed3_r_i_i_i64(ptr addrspace(1) %out, ptr add |
84 | 86 | ; VI: v_max_u16_e32 [[MAX:v[0-9]]], 12, {{v[0-9]}} |
85 | 87 | ; VI: v_min_u16_e32 {{v[0-9]}}, 17, [[MAX]] |
86 | 88 | ; GFX9: v_med3_u16 v{{[0-9]+}}, v{{[0-9]+}}, 12, 17 |
| 89 | +; GFX11-TRUE16: v_med3_u16 v{{[0-9]+}}.l, v{{[0-9]+}}.l, 12, 17 |
| 90 | +; GFX11-FAKE16: v_med3_u16 v{{[0-9]+}}, v{{[0-9]+}}, 12, 17 |
87 | 91 | define amdgpu_kernel void @v_test_umed3_r_i_i_i16(ptr addrspace(1) %out, ptr addrspace(1) %aptr) #1 { |
88 | 92 | %tid = call i32 @llvm.amdgcn.workitem.id.x() |
89 | 93 | %gep0 = getelementptr i16, ptr addrspace(1) %aptr, i32 %tid |
|
707 | 711 | ; VI: v_max_u16 |
708 | 712 |
|
709 | 713 | ; GFX9: v_med3_u16 v{{[0-9]+}}, v{{[0-9]+}}, v{{[0-9]+}}, v{{[0-9]+}} |
| 714 | +; GFX11-TRUE16: v_med3_u16 v{{[0-9]+}}.l, v{{[0-9]+}}.l, v{{[0-9]+}}.h, v{{[0-9]+}}.l |
| 715 | +; GFX11-FAKE16: v_med3_u16 v{{[0-9]+}}, v{{[0-9]+}}, v{{[0-9]+}}, v{{[0-9]+}} |
710 | 716 | define amdgpu_kernel void @v_test_umed3_i16_pat_0(ptr addrspace(1) %arg, ptr addrspace(1) %out, ptr addrspace(1) %a.ptr) #1 { |
711 | 717 | bb: |
712 | 718 | %tid = call i32 @llvm.amdgcn.workitem.id.x() |
|
728 | 734 |
|
729 | 735 | ; GCN-LABEL: {{^}}v_test_umed3_i16_pat_1: |
730 | 736 | ; GFX9: v_med3_u16 v{{[0-9]+}}, v{{[0-9]+}}, v{{[0-9]+}}, v{{[0-9]+}} |
| 737 | +; GFX11-TRUE16: v_med3_u16 v{{[0-9]+}}.l, v{{[0-9]+}}.l, v{{[0-9]+}}.h, v{{[0-9]+}}.l |
| 738 | +; GFX11-FAKE16: v_med3_u16 v{{[0-9]+}}, v{{[0-9]+}}, v{{[0-9]+}}, v{{[0-9]+}} |
731 | 739 | define amdgpu_kernel void @v_test_umed3_i16_pat_1(ptr addrspace(1) %arg, ptr addrspace(1) %out, ptr addrspace(1) %a.ptr) #1 { |
732 | 740 | bb: |
733 | 741 | %tid = call i32 @llvm.amdgcn.workitem.id.x() |
|
0 commit comments