<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/130884>130884</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
llvm/test/CodeGen/AMDGPU/shufflevector-physreg-copy.ll fails machine verifier after scheduling
</td>
</tr>
<tr>
<th>Labels</th>
<td>
backend:AMDGPU,
llvm:codegen
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
arsenm
</td>
</tr>
</table>
<pre>
This test disables the verifier to work around a bug in liveness in the scheduler:
```
# After Machine Instruction Scheduler
********** INTERVALS **********
SGPR16_LO16 [0B,32r:0) 0@0B-phi
SGPR16_HI16 [0B,32r:0) 0@0B-phi
SGPR17_LO16 [0B,16r:0) 0@0B-phi
SGPR17_HI16 [0B,16r:0) 0@0B-phi
VGPR4_LO16 [96r,104r:0) 0@96r
VGPR4_HI16 [96r,104r:0) 0@96r
VGPR5_LO16 [96r,100r:0) 0@96r
VGPR5_HI16 [96r,100r:0) 0@96r
%10 [16r,32r:0)[32r,176r:1) 0@16r 1@32r L0000000000000003 [32r,176r:0) 0@32r L000000000000000C [16r,176r:0) 0@16r weight:0.000000e+00
%11 [80r,176r:0) 0@80r weight:0.000000e+00
%18 [100r,104r:0)[104r,176r:1) 0@100r 1@104r L0000000000000003 [100r,176r:0) 0@100r L000000000000000C [104r,176r:0) 0@104r weight:0.000000e+00
RegMasks:
********** MACHINEINSTRS **********
# Machine code for function shufflevector_v2i32_10_physreg_even_vgpr_pair_copy: NoPHIs, TracksLiveness, TiedOpsRewritten
Function Live Ins: $sgpr16 in %8, $sgpr17 in %9
0B bb.0 (%ir-block.0):
liveins: $sgpr16, $sgpr17
16B undef %10.sub1:sgpr_64 = COPY $sgpr17
32B %10.sub0:sgpr_64 = COPY $sgpr16
80B %11:vgpr_32 = V_MOV_B32_e32 0, implicit $exec
96B INLINEASM &"; def $0, $1" [attdialect], $0:[regdef], implicit-def $vgpr4, $1:[regdef], implicit-def $vgpr5
100B %18.sub0:vreg_64 = COPY $vgpr5
104B undef %18.sub1:vreg_64 = COPY $vgpr4
176B GLOBAL_STORE_DWORDX2_SADDR %11:vgpr_32, %18:vreg_64, %10:sgpr_64, 0, 0, implicit $exec :: (store (s64) into %ir.ptr, addrspace 1)
192B SI_RETURN
# End machine code for function shufflevector_v2i32_10_physreg_even_vgpr_pair_copy.
*** Bad machine code: No live segment at use ***
- function: shufflevector_v2i32_10_physreg_even_vgpr_pair_copy
- basic block: %bb.0 (0x11e01b120) [0B;208B)
- instruction: 100B %18.sub0:vreg_64 = COPY $vgpr5
- operand 0: %18.sub0:vreg_64
- liverange: [100r,104r:0)[104r,176r:1) 0@100r 1@104r
- v. register: %18
- at: 100B
LLVM ERROR: Found 1 machine code errors.
```
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJysVl1v4jgX_jXm5gjkjySECy4SKB0kClXo9H33KnISE7xNE2Q7zMy_X9kkUNi2U-3uKBrRk-d5zofPOTHXWpa1EFPkx8ifD3hr9o2acqVF_TrImuLX9GkvNRihDRRS86wSGsxewFEouZNCgWngR6NegKumrQvgkLUlyBoqeRS10Nr-tgSd70XRVkIhFiHsngB3D44QZRDtjFDwwPO9rAUsa21UmxvZ1LA9cy3ysweW66e75DlabeFzIMLR9v4xIUG62pAAkB_jGNEZozY-jOgEMPIwjoeHvbxgvy2_ih1f65LgU-yV7kfY5_vHxDvLTgJlsdi7Altrj-xFf4f0_6aJP0Tear6HRNQn2IKIA13KhPzY_kFnZOxSJD2PBAoI8jCjCmCFr_8xuOWd_Vn8LXx28XwLt27gh5Dl3ljz6EQQiMYYd3ETyw7xe-wQ_5YdOt8Y39TbGb13E8f4lLl9_37mvdxtLpb5QfJXvt4wvE8TSET5wPWL7ubz8zF7iGbfluu75Xr7lHxh1Ox494OdN4WAXaNg19an8db7drerxFHkplHpkUpGU4LTw_6XVqJMxVHU6bE8qPTApUrz5vALsQjWzeO3pUZ0Bk-K5y961S0cZ5Gi2Bx0In4oaYyoEY4WvTeLs9vFaiDq6fKgSGC3FKJ-aMm9cdwZJ6d1hWOEJ1k2woBoiKgv1TCrmvxl5I64W2oTcItP3shfySIckSB22LYuxA7cwIx0mxHEIotJAw8Qm8Ns8_jHFY_RE-_MwJ8xAoSjEF8YVt7VkVEHfk4fNs9pzGgqGAVsg5Svh0rm0lgN8VPkCEeTLtblerVc30XbB0A0QJQiFsMpeg93-RFEqe1AbkwheSVyg_x5985GivxYibIQu87cext2OjY476z1Nbxvy4nfZBn2dTna5rmpy4Xh3Z5A2J_ARzzP8sZdNe5XmzhapdunTXKXzv-3Seb_p-k2ms-T21Kf8vFJeJHuTW9Oz5rw-b_bYwBbDNdQoTaNEu6HJU1A1qYB146jg7FzD7wolD7wXIDdMzboSdc222Wa3D19T9bdB5gyuKsLeP0PJ3PUS_ebIubXDk6j66YEtChfRW2AG2i1gLcbY3gOwhL-wYawEhnXMgc3pafq-f384p-ECEwyQt1-PH16WUxxGJ9qNgR5uYBYctdjX-6wITQHoXhdgEXC-73pcLYUitelK82_-YA4teMIlCilNu6m1XWefcHNJY1otXp-gLsk2STWuHBXN3LdCEKpRunR24vaoJiyYsImfCCmZOyRsTcZB3Swn058WhC-I8zLqD8e73JvTDGlJPODkAq-G8gpxdTHjFDMKPXoSPBxFnjjcS4Y45nHkIfFK5fVqKqOr6NGlQOpdSumhOEw9AYVz0Sl3TWV0oznL6IuEIuih_n943e7jOgMUWq5iEU2_FLU1uzPB2pqzcOsLTXycCW10RcnRppKOACiC3vLRXQxawpxb-mLXn5x1X_Dru2Grt-rCnZcVvpcvPPNmLv7bHfvlXU5aFU13RtzcJ9YukB0UUqzb7NR3lj3XRQu2oNq_rTrky5cGTSii64Sxyn9KwAA__8ySjZj">