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

    <tr>
        <th>Summary</th>
        <td>
            RISC-V: Assertion failure for -2158497792 
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            backend:RISC-V
      </td>
    </tr>

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

    <tr>
      <th>Reporter</th>
      <td>
          kito-cheng
      </td>
    </tr>
</table>

<pre>
    How to reproduce:
```
$ clang x.c -target riscv64 -march=rv64im_zba -O
```
Testcase:
```
long long f(){
    return -2158497792;
}
```
Error Message:
```
clang-14: /home/kitoc/llvm-workspace/llvm-project/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMatInt.cpp:325: llvm::RISCVMatInt::InstSeq llvm::RISCVMatInt::generateInstSeq(int64_t, const llvm::FeatureBitset&): Assertion `Lo12 != 0 && "unexpected instruction sequence for immediate materialisation"' failed.
PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.      Program arguments: /scratch1/kitoc/llvm-workspace/build/bin/clang-14 -cc1 -triple riscv64-- -emit-obj --mrelax-relocations -disable-free -clear-ast-before-backend -main-file-name x.c -mrelocation-model static -mframe-pointer=none -fmath-errno -ffp-contract=on -fno-rounding-math -fno-verbose-asm -mconstructor-aliases -nostdsysteminc -target-feature +m -target-feature +zba -target-feature +relax -target-feature -save-restore -target-abi lp64 -msmall-data-limit 8 -mllvm -treat-scalable-fixed-error-as-warning -debugger-tuning=gdb -fcoverage-compilation-dir=/home/kitoc/llvm-workspace/clz -resource-dir /scratch1/kitoc/llvm-workspace/build/lib/clang/15.0.0 -internal-isystem /scratch1/kitoc/llvm-workspace/build/lib/clang/15.0.0/include -internal-isystem /scratch1/kitoc/llvm-workspace/build/bin/../lib/clang-runtimes/riscv64/include -O1 -fdebug-compilation-dir=/home/kitoc/llvm-workspace/clz -ferror-limit 19 -fno-signed-char -fgnuc-version=4.2.1 -fcolor-diagnostics -faddrsig -o /tmp/x-5ede20.o -x c x.c
1.      <eof> parser at end of file
2.      Code generation
3.      Running pass 'Function Pass Manager' on module 'x.c'.
4.      Running pass 'RISCV DAG->DAG Pattern Instruction Selection' on function '@f'
 #0 0x00007feb14daeada llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /home/kitoc/llvm-workspace/llvm-project/llvm/lib/Support/Unix/Signals.inc:565:0
 #1 0x00007feb14daeb91 PrintStackTraceSignalHandler(void*) /home/kitoc/llvm-workspace/llvm-project/llvm/lib/Support/Unix/Signals.inc:632:0
 #2 0x00007feb14dac838 llvm::sys::RunSignalHandlers() /home/kitoc/llvm-workspace/llvm-project/llvm/lib/Support/Signals.cpp:103:0
 #3 0x00007feb14dae45b SignalHandler(int) /home/kitoc/llvm-workspace/llvm-project/llvm/lib/Support/Unix/Signals.inc:407:0
 #4 0x00007feb1417e040 (/lib/x86_64-linux-gnu/libc.so.6+0x3f040)
 #5 0x00007feb1417dfb7 raise /build/glibc-S9d2JN/glibc-2.27/signal/../sysdeps/unix/sysv/linux/raise.c:51:0
 #6 0x00007feb1417f921 abort /build/glibc-S9d2JN/glibc-2.27/stdlib/abort.c:81:0
 #7 0x00007feb1416f48a __assert_fail_base /build/glibc-S9d2JN/glibc-2.27/assert/assert.c:89:0
 #8 0x00007feb1416f502 (/lib/x86_64-linux-gnu/libc.so.6+0x30502)
 #9 0x00007feb1e9ff1b5 llvm::RISCVMatInt::generateInstSeq(long, llvm::FeatureBitset const&) /home/kitoc/llvm-workspace/llvm-project/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMatInt.cpp:326:0
#10 0x00007feb214938b4 selectImm(llvm::SelectionDAG*, llvm::SDLoc const&, llvm::MVT, long, llvm::RISCVSubtarget const&) /home/kitoc/llvm-workspace/llvm-project/llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp:183:0
#11 0x00007feb21496dc1 llvm::RISCVDAGToDAGISel::Select(llvm::SDNode*) /home/kitoc/llvm-workspace/llvm-project/llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp:631:0
...
```
Failed since https://github.com/llvm/llvm-project/commit/4c3d916c4bd2a392101c74dd270bd1e6a4fec15b / https://reviews.llvm.org/D113568
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzFWNty27YW_Rr5BQMOb6KoBz3YVnzqM3GbqXzy6gEBUEJDEiwA2mq__iyAkiwqTieZpK3GQ5C47L32wsIG4EqLP1Y_6RfiNDGyN1oMXM6y61m8nsXXsyI-_I2faU54w7ot2UecUMfMVjpilOXPRU5oywzfzbK1wZdqn_6sGKG_vGnoUVrHmf2io0bDR3jUs7ScpcvZ4mZsIfgZ6QbTEZom8zJfLhbLdJYdmmeL9ZsG3xmjDXmQ1rLtF72G0GiSo53M0rudbiWKT8ppjrJpnlv6os0n2zMujxVg7DfJ3eHTF6rC8zFQg5df7ze3H1E-3I5Va2n5sfqBufvORbzv4TFL595vsAJ82fVZl7HivrNuI3__qy5b2UnDnDx0BXeqc0X-BCS3hGvUno2-kww8yhvlrIdaeJqB4NpaaZzSHQEx73WSgosEs0piEjoVKNKhk_secUtBFKyagYcRVv4-yI5LUoNt1bZSKKAhLR5GsUZZ5rth_CxdkJqpRopo5P7D-3fXm3fEDlWrHGGkGrZej9o4r8ydc731qNM7_KHNRj6OSJstvgnrPAzeDEISt5OEG2Z3pGL8kzNhrm5JH8TNIQBAtnowY7UfyazV3OMUxAyIgRvVuwOsjYMRIoa2P4kmjkj4fTB6a1hLMK1DKztnD7LBeOb4Lvkr6VSDaoQvFci4O-qOUM4TLCv4b-RxWVFKqAQnVFe_EUpbIxu2p3hqHsi0hArwWjWS1kZK2GgkM5RZRyuJaZDU8yARJ9an6mgN0mnHWjmu4fbVEm21kA2xDl--pUZ0kvYaEpIGAuh0B_M1JnNHpTGdxkfdU8jKswwFrqEAWneaGj10QiEm33esepam0lYCVwvTQYpeNBpIG4VMgDA6bZ2wf1iHcLtTeqH1KFNQe9O-VRnSzOfVgafPGqhlzxLsWXiWp1ZWKdL0IYXZljUNFcwx2igvxRKVfv78vMAItZw1I9tqL4Unwsdg6QszHULGbEjocysNdYOvAC1bUYEErsEBsg8Ia3vVjJQL5Zn9imTDmz-Jxx2U64d9q9TGvBSkhjKZR3EUExrmtmMNVSPxP8IqXo6L8bvtjwskiqauKNapU620qDgsk3Onv2AR1WEavoPrepzZUQTJclSxVdsOk853zKBi2w3cC9v6nJat8yiNkjDRDQYi8229ohWHtGsmBLpBHdoz4JBO0rs9nUsh0zjCQtoT7tfjmGGSQ4aZZbdS17PsHemZQVImzBG_kHVN_CoeO6eHzrdYvOSQ_z2e0JgdGn8duiDOHrkOABZ3Qzcm7A--4oF10KXxORlVyAJD45fQwgNKF4dMmH_BVNiDyPr6PxRAUcCk83NO7s_2hY1sJB9Tf_BRH_3je5bHtS_G7X2WZjGJ9zF-i1pWSS6YZIKdbVsQ0vjywUBdIUE_jlm-fO1k2MsTyMeKbcOmdYv9AXvc8nv39c3Q-z0Jb__r1N5XQBGssRHEB7fzwm_i8WssyWUs1TIhF8BHEz9hK2r8JJTPWkH6138_2iJLp2jTC7S8zMq3mIcGJqDteEj7cXCPOMejURJnU5zZJav5vCKXNP4jE57Hiym0fAItWcg49-em8mRwXxZP2NUb1Q17igwyNvDI6gg6vYn3WY0h_ix2sjm_sCnqakEMU9av0lOq3HozdLMU6X9_Pn2mEVYWUm4AfcykmEche588hzEmVDwHHMDkU6o3HQU9J9Poigsk9TJNCKv8Ke1rkTgx8hBGBSflhZPF1ElR5yUjT08snEuf_KnxqWJfH_s47vQyulxOXZaXLudx-o2zFmPIZNaW5zblsq6Tav5tZ3d_AfKp6wtH9vFAPx7c_437SvHKoc9052k7TfJlVlY5LgQ-8d-37SQ7n7YD7Bch053HuFm_1_wstvO2h4-PoeIzYgK-zVAdrqR_JzOhvEcIAP-o8ThmqTKbEpJcEFIInO4vIB9teHvn3EzpWv-Mzf3HbAlfHU6RnS3LKIrevDHfhSscscrf-aaXtK1yu6GKcAA7gzAFhjYcrvCS80wsk4LnlUhZhpwSJ3yRC5Eu4koksmB5LXmCHI--F26MfFbyZXIdXCdJNi_KK7GC1WzJrpxyjVz5QOnH6Q3XJxN_LfDX1bN_J5CrwTSrb45HWTuEM-k8L5P0arcqsmKRVAiC5fOUiSpLRVmwZTmvWVlmgIibhGzsaja_wZ34cE87SANQcU2er6_UKo3TFHtCmWRpkhaRwKbDFlwu8yyP55zjACVxtWtOHFyZVUDm78loxLXbvRJ0hTToT7EyeIV9NridNiuvJhxsZbe9CnGsQhD_BwE0r8U">