<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/63033>63033</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
llvm::Register llvm::MachineOperand::getReg() const: Assertion `isReg() && "This is not a register operand!"' failed.
</td>
</tr>
<tr>
<th>Labels</th>
<td>
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
cbeuw
</td>
</tr>
</table>
<pre>
With `llc -O2`:
```llvm
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
define void @_ZN5repro4fn1617h3fe1cacc58d45f54E(ptr %_29.61573, i1 %0, i128 %1) {
start:
br label %bb12
bb12: ; preds = %bb41, %bb32, %bb17, %start
%_15.2.ph = phi ptr [ null, %start ], [ null, %bb17 ], [ %_20.13, %bb41 ], [ null, %bb32 ]
br i1 %0, label %bb23, label %bb17
bb17: ; preds = %bb12
store i8 0, ptr %_15.2.ph, align 1
br label %bb12
bb23: ; preds = %bb30, %bb12
%_20.71455 = phi ptr [ %_29.61573, %bb12 ], [ null, %bb30 ]
br label %bb34
bb34: ; preds = %bb32, %bb23
%_20.10 = phi ptr [ %_20.71455, %bb23 ], [ %_20.14, %bb32 ]
br label %bb28
bb28: ; preds = %bb35, %bb30, %bb34
%_40.2 = phi ptr [ %_20.71455, %bb34 ], [ %_20.71455, %bb35 ], [ %_40.3, %bb30 ]
%_20.12 = phi ptr [ %_20.10, %bb34 ], [ %_20.10, %bb35 ], [ %_20.14, %bb30 ]
store ptr null, ptr %_40.2, align 8
br label %bb29
bb29: ; preds = %bb38, %bb28
%_40.3 = phi ptr [ %_40.2, %bb28 ], [ %_20.71455, %bb38 ]
%_20.13 = phi ptr [ %_20.12, %bb28 ], [ %_20.10, %bb38 ]
br label %bb30
bb30: ; preds = %bb41, %bb29
%_20.14 = phi ptr [ %_20.13, %bb29 ], [ %_20.10, %bb41 ]
switch i128 %1, label %bb23 [
i128 1, label %bb28
i128 0, label %bb32
]
bb32: ; preds = %bb30
switch i1 false, label %bb12 [
i1 true, label %bb34
i1 false, label %bb35
]
bb35: ; preds = %bb32
br i1 %0, label %bb38, label %bb28
bb38: ; preds = %bb35
br i1 %0, label %bb41, label %bb29
bb41: ; preds = %bb38
switch i8 0, label %bb12 [
i8 0, label %bb30
]
; uselistorder directives
uselistorder ptr %_20.14, { 1, 0 }
}
```
https://godbolt.org/z/5f5o9qnWT
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyUV1tvpDYU_jWeFwtkH9tcHuYhaTpv7UrblVbqS8TFDG4JTG2T7PbXrwzDwHhgclFEjH1u33cuOJkx6thKuUfiEYmnXdbbutP7Ipf92y7vyp_778rWGEWkaQocfAEUEcQeEHlCZHpGZPxtmteXcctm-igtLjObNdnPrrcYsSeMAGTwgtiDDE4QOzMMhod7pdevbhXx4RGoaVElTolCErSJW0STTsSDvygkCODKv9Xq1MjJ948keo540Lf_tt1bGzSq7X8Ex7a_aI3PUlaqlfi1UyVGnDz__afQ8qQ7XrU0onHNKkmLrChEUnJRCf47guRkNUYgniENIypihuA3rKjbIuMSEvdCEaQYxY-jI2MzbS9cYpxr3GS5bJxkntOroIZ39oARe8QnLUtzBiXynFPnYlgyuCxpfF6OXs4uXIxUhBCe6sHAqVZ4iF084rZvmqUORuJpeL8-c6aXRwNsElJ2Oed0U5XBcDQDXpC0wA7M26CxR0a8QcbEGsbGdlpileDB-JSgM3i3lTXq2GL6MfaBOYef-VkJjpGZQ1imBEgYUy7ETU78mjrrbvNLPH4XkBi_hsT4xyGtgZlrDZgHhpJ1JGeYC8W1SuLb5bKskcTLUPIROGtAxIK-ecmXmDgJ4WOQGF-B5IkIX4STkG3kcCJl0z0l930vz28ce3RfeR4byHmbSmxqIsfG3EHJRn5SLz_pRsuyZK6HxCOdraKe_J913ic8WWN03fbA9X3jS0aTO_1GvH4j9wv0_mif6JzTthk-WyjdD_88qaeEvylb1MuPlTeUnZVJGI9yN0KJJ-CPdjYNvovjCz_waX4mihex4yprjPQ_H-CHjq3ufam55fGWISYuVXQTvvh8-PDul3Bsjjtjj90be-vT7j2f_CapXitzut3KXj5uC-AmFys1QjZYdi57IxvlZlMpNS6VloVVr9JMGlfHl2vZZczFj2PJEoziyfRlMd1jly5ra0_GXdLggOBw7Mq8a2zY6SOCw_8IDqISXfpf-_3brtyzMmVptpN7GiVCQBqTeFfvU5HxmGRFXNCISVpCxhLGhYx5VoiKiZ3aAwFGBKOUcMrjMIUUGMulTEhV0ThBnMiXTDWhu2A73ztlTC_3ESOM7QbizHR_13snFOT90SBOHBVmVrPKNnIQcIjYw1d5VMZKjeetP7KiVq38cpI6a8tx7yjtV3lE7n6d4qJrjbu14gdjpLaqa90_B8rMEggiBJG7cX-rlcHK4LazOMN68tadjQN1V2-IcZWpRpbhrtfN3iNc2brPw6J7QXAYohz_BCfd_SMLi-AwcGEQHAY6fgUAAP__-GMvtw">