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

    <tr>
        <th>Summary</th>
        <td>
            Assertion failure in `HexagonAsmPrinter::emitInstruction()`
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            backend:Hexagon,
            llvm:crash
      </td>
    </tr>

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

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

<pre>
    ```
llc: /root/llvm-project/llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp:772: virtual void llvm::HexagonAsmPrinter::emitInstruction(const llvm::MachineInstr*): Assertion `Ok' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.      Program arguments: /opt/compiler-explorer/clang-assertions-trunk/bin/llc -o /app/output.s -x86-asm-syntax=intel <source>
1.      Running pass 'Function Pass Manager' on module '<source>'.
2.      Running pass 'Hexagon Assembly Printer' on function '@f'
 #0 0x000055979c5e8ccf llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/opt/compiler-explorer/clang-assertions-trunk/bin/llc+0x3575ccf)
 #1 0x000055979c5e6424 SignalHandler(int) Signals.cpp:0:0
 #2 0x00007f02396b3420 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x14420)
 #3 0x00007f023918000b raise (/lib/x86_64-linux-gnu/libc.so.6+0x4300b)
 #4 0x00007f023915f859 abort (/lib/x86_64-linux-gnu/libc.so.6+0x22859)
 #5 0x00007f023915f729 (/lib/x86_64-linux-gnu/libc.so.6+0x22729)
 #6 0x00007f0239170fd6 (/lib/x86_64-linux-gnu/libc.so.6+0x33fd6)
 #7 0x000055979a3f2faf llvm::HexagonAsmPrinter::emitInstruction(llvm::MachineInstr const*) (/opt/compiler-explorer/clang-assertions-trunk/bin/llc+0x137ffaf)
 #8 0x000055979b5d8d0f llvm::AsmPrinter::emitFunctionBody() (/opt/compiler-explorer/clang-assertions-trunk/bin/llc+0x2565d0f)
 #9 0x000055979a3f29a4 llvm::HexagonAsmPrinter::runOnMachineFunction(llvm::MachineFunction&) (/opt/compiler-explorer/clang-assertions-trunk/bin/llc+0x137f9a4)
#10 0x000055979b87947e llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (.part.0) MachineFunctionPass.cpp:0:0
#11 0x000055979be0f3f1 llvm::FPPassManager::runOnFunction(llvm::Function&) (/opt/compiler-explorer/clang-assertions-trunk/bin/llc+0x2d9c3f1)
#12 0x000055979be0f639 llvm::FPPassManager::runOnModule(llvm::Module&) (/opt/compiler-explorer/clang-assertions-trunk/bin/llc+0x2d9c639)
#13 0x000055979be0feb2 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/opt/compiler-explorer/clang-assertions-trunk/bin/llc+0x2d9ceb2)
#14 0x00005597998fb734 compileModule(char**, llvm::LLVMContext&) llc.cpp:0:0
```

```llvm
target triple = "hexagon-unknown-linux-gnu"

define float @f() {
BB:
  %A = alloca i8, i32 0, align 1
  %RP = alloca float, i32 -42, align 4
  %0 = load float, ptr %RP, align 4
  store i8 0, ptr %A, align 1
  ret float %0
}
```

https://godbolt.org/z/qvqzc6zbc
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy8V01v2zgT_jX0hbBBk5IoHXxwkhot0KBBW7zXgKIomW8oUiWp1OmvX5CSbckxdtNusEACy2POM898aGbInJONFmID0huQ3i1Y7_fGbvi-Zs4vSlO9bECGxj90B9BWKQ7IFgK8s8Z4gHdKPbfLzpr_C378Gj5kCfDuO7ONCNKP4sAao89PW9c-WKm9sCvedYBsKcUB91la3zMFn42sYMQiW0C2r7QGsWil_6Sdtz33MsDn3GjnJ4r3jO-lFvEQwFuAi2Bl65ywQQOCDH15ApjCmkklqtXg5MPnD9tvH6Dry1Z6yGDZN9CKzlgPvYF77zsX4PEO4F0j_b4vV9y0E-_nMZHO9cIBvINMV1BqrvpKQL8XkFvm9rBk_MlbxsVo_ptn_AlWfRsCM4jQCqDiwZrGshYy2_St0N6NmTBdsMJN20kl7FIcOmWssEGmmG6W7OiuW3rb6yeAd6XUkSeHSxMgWNcFoN53vV85uDzk2ZK5duletGcHQO5C1BUE5NaZ3nIByIeB2DoQ-9prLXUDO-YcBJjueh0TAh-C4J5p1gQ6FBoNW1P1SoRTMzBMR-fxNcAx_zFxbale4LEMBsz6aC-gJqgOHxEMAkwQRAeEEErTghY8FTnn9aRC3IsbHiJkDP33kAuA8_Mhy34-GuetYC3AGcC3UGoPcAEBzv9lAgC-QQeS0pTzOpTniff6gneW4AR-k41m6iPTlQr4-UhjELvxXULx_wSERyBaI0yKrCQJRvDx0QrnjRWP1o9eDO_sIc8es2SppO4Py0b3ww-d31vBqpUzKxQZr5MEoxlfMjOzzhFCJbRMOvEGfB6Qs4icEITKGXIyR07rPC0gK82bmE-QMc7TYoacXiLTU07fjEnxHDObY1JUV9nvYRJSV9kMk05rgZEa16z-k_Z4vTHC2DWH9vheFb0mtK7ZvKLzqRdlWuUVmnpxjf6xk9yY6iUyezeCOM3SCs0JFpdhLljyz2G2vf6ix3ge-V6L9fm37J0DXbDk5EfoHLOWV-a0SKh4PRSPfEKTnnhy1YXX3Fcdsz40gwJewXvdiQKvWUsrBapJvZ7w2j0E1eO4-G1G71IVVcFJvZ5FE1-yzkjxBtb3cdDNC2EUvTfjjBQzxuSSsSjxhLESDeMv49Q7c__UdurE_z_hLUo8451MeRd5XVKSwNHGKZx8z4ZVbhvm8Jnk58__u7812ouDH5kqxa_U4XyfvRBGuCjycXeF3sourCvkDgKM90MHWPb6SZufetrD8RSvErXUAtbKMA-HjWToXfRmOHBzc1rtIAQ43UYLTCnDGZR53DDC4A4PTMlGw_Xk9NeH6fFo5aixTPBZJ5nooKiiDKvOCp23A9wVlbgcQJkPHMaT2yt8rPBHR3F6jCq9-5toXyzQpiqN8itjG4B3vwDe_Xj-8Ytnv0q-qDakKkjBFmKzznKKipymdLHf0Cpf5wXBQnBCq7zGRKS0qnhZrwknZbqQG4wwQdk6XycEE7riJM-YSAiuBSrSMqyJomVSrULGg-1F3NI3GSE0XyhWCuXirQjjsJ4LXZ0HQEg2vgUYj8UXt_ggTO8WdhOX_7JvHEiQks67swkvvRKb8-0jXDr6EOV4EXnzFA_vTIYWvVWbP7-LREf_CgAA__8grTwI">