diff options
author | Alexey Karyakin <akaryaki@quicinc.com> | 2025-10-20 19:42:16 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-10-20 19:42:16 -0500 |
commit | f3a60cf8dd602958f706c11db66e401257364be7 (patch) | |
tree | 8d03e31006cbf99f38a752f9396812738e179676 /llvm/test/Analysis/CostModel/X86/load-broadcast.ll | |
parent | 9173846640767d3bb2f0d8402c91a9b3b043668f (diff) | |
download | llvm-main.zip llvm-main.tar.gz llvm-main.tar.bz2 |
The "hexinsert" pass tries to replace bitfield operations with Hexagon
`insert` instructions. To limit memory usage, there is a limit on the
internal table size. When the limit is reached, the state is not
correctly cleaned up so defs from from new `insert` instructions are not
deleted after processing the basic block. Later, these defs can be
incorrectly used in other basic blocks even they are not reachable. Then
compiler will crash with:
*** Bad machine code: Virtual register defs don't dominate all uses. ***
Fixes: #163774
Diffstat (limited to 'llvm/test/Analysis/CostModel/X86/load-broadcast.ll')
0 files changed, 0 insertions, 0 deletions