diff options
author | Ivan Butygin <ivan.butygin@gmail.com> | 2025-02-12 12:19:13 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-02-12 14:19:13 +0300 |
commit | 79010e2e4d0e27ee87887bfaef2c32e908c92a8e (patch) | |
tree | d549c4c6ca9e6975ac4518142d9dc7c041de83ed /llvm/lib/CodeGen/MachineModuleSlotTracker.cpp | |
parent | bf7af2d12e3bb8c7bc322ed1c5bf4e9904ad409c (diff) | |
download | llvm-79010e2e4d0e27ee87887bfaef2c32e908c92a8e.zip llvm-79010e2e4d0e27ee87887bfaef2c32e908c92a8e.tar.gz llvm-79010e2e4d0e27ee87887bfaef2c32e908c92a8e.tar.bz2 |
[mlir] ArithToLLVM: fix memref bitcast lowering (#125148)
`arith.bitcast` is allowed on memrefs and such code can actually be
generated by IREE `ConvertBf16ArithToF32Pass`.
`LLVM::detail::vectorOneToOneRewrite` doesn't properly check its types
and will generate bitcast between structs which is illegal.
With the opaque pointers this is a no-op operation for memref so we can
just add type check in `LLVM::detail::vectorOneToOneRewrite` and add a
separate pattern which removes op if converted types are the same.
Diffstat (limited to 'llvm/lib/CodeGen/MachineModuleSlotTracker.cpp')
0 files changed, 0 insertions, 0 deletions