[PATCH] D142445: [mlir][tensor|memref] Harden the checks on dim op
Mehdi AMINI via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Jan 24 10:19:32 PST 2023
mehdi_amini added a comment.
In D142445#4077807 <https://reviews.llvm.org/D142445#4077807>, @qcolombet wrote:
>> I'm always a bit worried when we turn something from "UB" into "invalid IR": the issue being "action at distance". That is, are there patterns, fold, etc. that reduce the rank of a memref and build invalid IR unexpectedly?
>
> I can see that, but at the same time, if that happens the generated code would be silently broken.
That is the concept of UB though :)
> If there were practical reasons to support that, I could live with it but I don't know if it is a pattern that happens in practice.
> Anyhow, to be more concrete here, do you think we should support (as in don't crash the compiler) dim op of 0-D shapes?
We should not crash the compiler, we can generate ud2 / llvm.unreachable or anything instead :)
> This patch basically changes a crash on clearly UB IR (I guess we could come up with a semantic for dim of 0-D though) to the compiler emitting an error.
Yes but you can't prove this path will be executed at runtime...
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D142445/new/
https://reviews.llvm.org/D142445
More information about the llvm-commits
mailing list