|
1 | 1 | ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
|
2 | 2 | ; RUN: llc < %s -mtriple=amdgcn-- -verify-machineinstrs | FileCheck %s --check-prefix=SI
|
3 | 3 | ; RUN: llc < %s -mtriple=amdgcn-- -mcpu=tonga -mattr=-flat-for-global -verify-machineinstrs | FileCheck %s --check-prefix=VI
|
4 |
| -; RUN: llc < %s -mtriple=amdgcn-- -mcpu=gfx1100 -mattr=-flat-for-global -verify-machineinstrs | FileCheck %s --check-prefix=GFX11 |
| 4 | +; RUN: llc < %s -mtriple=amdgcn-- -mcpu=gfx1100 -mattr=-flat-for-global,+real-true16 -verify-machineinstrs | FileCheck %s --check-prefixes=GFX11,GFX11-REAL16 |
| 5 | +; RUN: llc < %s -mtriple=amdgcn-- -mcpu=gfx1100 -mattr=-flat-for-global,-real-true16 -verify-machineinstrs | FileCheck %s --check-prefixes=GFX11,GFX11-FAKE16 |
5 | 6 |
|
6 | 7 | declare i16 @llvm.bswap.i16(i16) nounwind readnone
|
7 | 8 | declare <2 x i16> @llvm.bswap.v2i16(<2 x i16>) nounwind readnone
|
@@ -490,13 +491,21 @@ define float @missing_truncate_promote_bswap(i32 %arg) {
|
490 | 491 | ; VI-NEXT: v_cvt_f32_f16_e32 v0, v0
|
491 | 492 | ; VI-NEXT: s_setpc_b64 s[30:31]
|
492 | 493 | ;
|
493 |
| -; GFX11-LABEL: missing_truncate_promote_bswap: |
494 |
| -; GFX11: ; %bb.0: ; %bb |
495 |
| -; GFX11-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) |
496 |
| -; GFX11-NEXT: v_perm_b32 v0, 0, v0, 0xc0c0001 |
497 |
| -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) |
498 |
| -; GFX11-NEXT: v_cvt_f32_f16_e32 v0, v0 |
499 |
| -; GFX11-NEXT: s_setpc_b64 s[30:31] |
| 494 | +; GFX11-REAL16-LABEL: missing_truncate_promote_bswap: |
| 495 | +; GFX11-REAL16: ; %bb.0: ; %bb |
| 496 | +; GFX11-REAL16-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) |
| 497 | +; GFX11-REAL16-NEXT: v_perm_b32 v0, 0, v0, 0xc0c0001 |
| 498 | +; GFX11-REAL16-NEXT: s_delay_alu instid0(VALU_DEP_1) |
| 499 | +; GFX11-REAL16-NEXT: v_cvt_f32_f16_e32 v0, v0.l |
| 500 | +; GFX11-REAL16-NEXT: s_setpc_b64 s[30:31] |
| 501 | +; |
| 502 | +; GFX11-FAKE16-LABEL: missing_truncate_promote_bswap: |
| 503 | +; GFX11-FAKE16: ; %bb.0: ; %bb |
| 504 | +; GFX11-FAKE16-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) |
| 505 | +; GFX11-FAKE16-NEXT: v_perm_b32 v0, 0, v0, 0xc0c0001 |
| 506 | +; GFX11-FAKE16-NEXT: s_delay_alu instid0(VALU_DEP_1) |
| 507 | +; GFX11-FAKE16-NEXT: v_cvt_f32_f16_e32 v0, v0 |
| 508 | +; GFX11-FAKE16-NEXT: s_setpc_b64 s[30:31] |
500 | 509 | bb:
|
501 | 510 | %tmp = trunc i32 %arg to i16
|
502 | 511 | %tmp1 = call i16 @llvm.bswap.i16(i16 %tmp)
|
|
0 commit comments