<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/100112>100112</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[RISCV] Incorrect definition of InsnCI
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
svs-quic
</td>
</tr>
</table>
<pre>
According to the spec:
> 26.2. Compressed Instruction Formats
> CR, CI, and CSS can use any of the 32 RVI registers, but CIW, CL, CS, CA, and CB are limited to just 8 of them.
But the definition in `RISCVInstrInfoC.td` has it taking `AnyRegC`. This should be `AnyReg`.
```
def InsnCI : DirectiveInsnCI<(outs AnyRegC:$rd), (ins uimm2_opcode:$opcode,
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxcUk2PozoQ_DXm0hpk2oSEA4cMeZGQ3il5mndcGdyAZ8HO-iOr-fcrPJmd2ZVQAe52Vbnc0ns9GaKG7Z7Z7pTJGGbrGn_3Tz-iHrLeqrfmOAzWKW0mCBbCTOBvNDBxZPzE-AeKfwCrHHNo7Xpz5D0p6IwPLg5BWwNn61YZ_Gd3e2HYQtttKI2C9nqFQRqInkCaN7Bj0hIIl5cOHE3aB3J-a-9jgLb7P-3_N-E14fE31zNIR7DoVQdSm-3X6AMcHqRr_tX6cwxJSdGojU5mtQFW8Ut3bV_SGToz2jYPilUcZulBBwjy-5YIq_jRvF1oalnFc_hv1h78bOOioKfP6lb8I66KP570q2jcwjJtB0wc4aQdDUHf6X2NiZbhwcbg4UNLHBmWTjGstyMzPGjjIep1xW_2NlhF7x2Pb2z_Us1UI1QtaplRU-yx2IvqsKuyuZHUl7KnnZBC7GupxrGu9mocSRYFL9U-0w1yLPkeRYFFWezysuR93VcVYtFLqgUrOa1SL_my3NfcuinT3kdqCs6LArNF9rT4NG6Ihn5CqjLEbfpcs2166uPkWckX7YP_pAk6LGlO07Ww3Qk6M1i3JfX16uxHkll0SzOHcPMpizPD86TDHPt8sCvD80b8eD3dnH2lITA8Jzue4fnh997grwAAAP__oMv0qw">