[llvm-dev] Call ABI attributes on callee parameters vs call arguments

Arthur Eubanks via llvm-dev llvm-dev at lists.llvm.org
Thu May 6 14:53:13 PDT 2021


In https://reviews.llvm.org/D101806 we are going to change call lowering to
only inspect the call arguments for ABI attributes, ignoring the callee
parameter ABI attributes (if the call is a direct call).

The frontend should already properly be setting the call arguments' ABI
attributes, especially due to indirect calls where we can't look at a
callee's parameter ABI attributes.

This is in line with [1] where we can't prevent mismatched calling
conventions.

I believe GlobalISel also needs to be fixed to do the same
in CallLowering::getAttributesForArgIdx().

Are there any concerns?

[1]:
https://llvm.org/docs/FAQ.html#why-does-instcombine-simplifycfg-turn-a-call-to-a-function-with-a-mismatched-calling-convention-into-unreachable-why-not-make-the-verifier-reject-it
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20210506/0e26481b/attachment.html>


More information about the llvm-dev mailing list