[PATCH] D88684: llvm-reduce: Don't replace intrinsic calls with undef

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 7 12:26:19 PDT 2020


arsenm added a comment.

In D88684#2317657 <https://reviews.llvm.org/D88684#2317657>, @dblaikie wrote:

> what sort of problems manifest from this issue? Does it lead to slower reductions because they spend more time creating a lot of broken reductions?

I think the general strategy of hack on the IR and if it breaks, skip it is a bit insane to begin with, so from that front this reduces the number of times that triggers

> I worry a bit about using heuristics "some intrinsics have these properties, so let's ignore all intrinsics" - other intrinsics represent normal instruction operations, right? (for target intrinsic instructions, for instance) so some cases might benefit from such reductions.

I think removing intrinsic calls is an unproductive reduction strategy in general. I think this will harm reducing any codegen issues since it changes the generated code so radically. It also assumes a target supports arbitrary call targets, which may not be the case. e.g. before AMDGPU supported calls, every testcase with an intrinsic would reduce to a call to undef


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D88684/new/

https://reviews.llvm.org/D88684



More information about the llvm-commits mailing list