[clang] [clang][CodeGen] Use byval for SystemZ indirect arguments (PR #66404)

Eli Friedman via cfe-commits cfe-commits at lists.llvm.org
Thu Sep 14 16:40:12 PDT 2023


efriedma-quic wrote:

> I just checked with a few small examples, and while the ABI does not seem to change, the code generation looks broken for tail recursion:

I'd guess the SystemZ backend doesn't implement byval properly (since it's not required for the C calling convention, probably nobody would notice any issues).

> Regarding MSan/DFSan, they need to know whether to copy value's or pointer's shadow into arguments' TLS

I don't see why you'd need to distinguish between two cases that generate identical IR, unless you think the additional information can somehow lead to more accurate diagnostics.  Other targets emit struct arguments in a similar way without any special handling in msan.

https://github.com/llvm/llvm-project/pull/66404


More information about the cfe-commits mailing list