[PATCH] D129572: [X86] initial -mfunction-return=thunk-extern support
Fangrui Song via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Jul 12 11:28:30 PDT 2022
MaskRay added a comment.
In D129572#3646044 <https://reviews.llvm.org/D129572#3646044>, @erichkeane wrote:
> In D129572#3646004 <https://reviews.llvm.org/D129572#3646004>, @nickdesaulniers wrote:
>
>> https://godbolt.org/z/rf16T83Kj
>>
>> IMO, the standards bodies focusing on standardizing attributes should clarify the semantics of attribute merging, _then_ compiler vendors should fix their compilers.
>
> They HAVE FWIW, by not creating attributes that have a 'merge' problem(yet). They end up being able to be completely additive (with the exception of the 'reason' ones like nodiscard/deprecated, at which point the standards decide that is implementation defined IIRC).
In case of a conflict, picking the first does not appear to be universal in GCC attributes. I haven't made a thorough survey,
but `visibility` picks the first and `patchable_function_entry` picks the second. Someone can ask what should be the rule and which attribute behavior should be considered a bug.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D129572/new/
https://reviews.llvm.org/D129572
More information about the llvm-commits
mailing list