<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/59252>59252</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [RISC-V] llvm.vp.select: Unexpected subvector extraction
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          dkurt
      </td>
    </tr>
</table>

<pre>
    ```
llc: /home/dkurt/llvm-project/llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp:1731: virtual void llvm::RISCVDAGToDAGISel::Select(llvm::SDNode*): Assertion `RISCVTargetLowering::getRegClassIDForVecVT(SubVecContainerVT) == InRegClassID && "Unexpected subvector extraction"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.      Program arguments: /home/dkurt/llvm-16-build-riscv64-release/bin/llc -mtriple=riscv64 -target-abi=lp64d test_llvm.ll
1.      Running pass 'Function Pass Manager' on module 'test_llvm.ll'.
2.      Running pass 'RISCV DAG->DAG Pattern Instruction Selection' on function '@f0'
Segmentation fault
```

Command which I use on [test_llvm.ll](https://github.com/llvm/llvm-project/files/10114481/test_llvm.txt):
```
llc -mtriple=riscv64 -target-abi=lp64d test_llvm.ll
```

BTW, There is no overload with a mask for `llvm.vp.select`: https://llvm.org/docs/LangRef.html#llvm-vp-select-intrinsics. Can it help solve the problem?

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJylVF1v6zYM_TXOC2HDX3HqBz_kJs0QoBuKJuseB9lmbK2yZOgjt_v3o-QEXS_uNmwzBEumqaPDQ1Kt6n9voiq9jXQfpVshuqjYQpQfRjUhTf2b05ZmIa5TPGv1G3b3Tz_xlt5npgf01pfjafd6n48nFPvtD2dFr6SbZ8LNNkXm4a9cW8cEXBXvIUAVWxph232L376YaREOffjwPO1_Uj3R20Z57QG3xqC2XEmgSALMwulJfUXN5bDsIsMLDjvBjDnuD0q_Yvd6JtyTa2m5U9IyLlF7Ww1RsacBR_mxhWSpaNCU_yzxfSZW2INx7ZVWSgO-W806T4M8onwDF8YF9ski7fPT4_b06N0nboFB6wbQOCttwSoYrZ2Np5kfaAzcjq5NOjX9SevPGeDGODS0ACZ74LITrkewI0KnmRmhZd2bp4O340-WDNC7ySdiMaUJhOdZq0GzCUgyN6G05m9KIKvi1nHRx5qb7lqVsabsMOP9Wi6DVwfxZDWfBZKANzeIbUhIzFpOVjFXZQ8Wjf3VoyZCLIyyG6MXJyWlDWbSnZhsDk4GXeHZG35kkg2ovcJkmlTvBHqvT3j55hZ4_heYoUyAKi2OikeaCNta1JJSbqx2y3lL7YWMhsMudyL0HZXpJfXzoi8OXjsW_l6YE3axf9Ngy3unpsmn7evIuxGO4Ax69Gj95VMM6z1V57-ujAsVnS-MLM2ysnzIaPmBat_t0jPfZfe_kvfdSL-cf4nyHZxH1AjcgFSgrqiFYhQ9xUKNMDHzBhfqH9oaAK9zYpaeJywqxc8KBBelB1-ZqvOBPjE5vOAlGe1EeS-CHNc5XjBiLikeaXhnEtgxCdR8I4oZjBLXpWFIulYgXS2HhfMKm6yq6k1RZXm96puir4uarSy3AhvKka-c-JWyA9_QJa7_cDGsnBbNf-_1dZ2v89XYlCUjeuVDVbBy023aKquxWF_SrK42l65uV4K1KIwnSzRXvMnTPM8ommxdrPMySYsuQ4ZVlVKcdV1RKeNEl1VyF3elm8CBLilDPwU31nz8pA7ig0S84zNnR6WbcFGsAtkmMP0DFqAEGg">