[clang] [C] Disable use of NRVO (PR #101038)
Richard Smith via cfe-commits
cfe-commits at lists.llvm.org
Mon Jul 29 12:27:25 PDT 2024
zygoloid wrote:
> Richard, I'm sorry to contradict you, but Aaron is correct to guess that this is ABI-affecting: ABIs should and sometimes do specify whether an indirect return address is allowed to be aliased.
My claim was narrowly that the choice to perform or not perform NRVO for an indirect return is not an ABI difference, which I'm not yet sure this contradicts. But you make a good point -- we shouldn't be turning off NRVO if it's only causing issues because we're also not correctly implementing an ABI rule on the caller side, and should instead fix Clang to obey the ABI rule.
Do we support ABIs that don't have a rule like x86_64's?
https://github.com/llvm/llvm-project/pull/101038
More information about the cfe-commits
mailing list