[PATCH] D135738: [InstCombine] Bail out of casting calls when a conversion to byval is involved.

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 12 10:51:28 PDT 2022


efriedma added a comment.

IR optimizations accommodate mismatches to some extent; if the types of the caller and the callee don't match, we treat the call as opaque, which effectively makes the call work if the actual registers match.  But that doesn't detect ABI-modifying attributes.

It might be possible to adjust optimizations to handle this conservatively without any deep infrastructure changes.  Basically, treat calls as opaque if there are significant ABI attributes that don't match... but I'm not sure what exactly that check would include, or how we make it fast.

----

That said, I don't have any objection to this patch... I mean, it can't really do any harm.  I just want to be sure we're on the same page about what it does, and does not accomplish.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D135738



More information about the llvm-commits mailing list