[clang] [llvm] target ABI: improve call parameters extensions handling (PR #100757)
Jonas Paulsson via cfe-commits
cfe-commits at lists.llvm.org
Fri Sep 13 10:36:13 PDT 2024
JonPsson1 wrote:
> I think the general direction is fine here. I would suggest to split this up into three parts: 1. Add noext attribute and disabled verification, 2. fix any verification failures (e.g. by emitting noext), 3. enable verification.
>
> It would be good to still be able to enable the verification in llc via an opt option, so you can write tests for it (and maybe useful when reducing an issue).
Patch updated per (1), meaning that it adds the noext attribute but with the actual verification disabled by default. Some llc tests are however added that use an overriding CL option '-argext-abi-check' to enable the verification. The verification has been improved to check that a function is not e.g. passed via ptr to an external function in which case it must adhere to the ABI even if its 'internal' (Internal functions are excluded for now but should not have to be, so that check could perhaps be removed before making this enabled by default.).
By committing this first step
- Anyone could enable the verification and work on fixing remaining issues on SystemZ.
- Any fron-end developer facing issues could use it to help isolate problems.
- Other targets could potentially also start working on this.
https://github.com/llvm/llvm-project/pull/100757
More information about the cfe-commits
mailing list