[lld] [lld][AArch64] Add support for GCS (PR #90732)
John Brawn via llvm-commits
llvm-commits at lists.llvm.org
Tue May 7 09:38:21 PDT 2024
john-brawn-arm wrote:
> > > Thanks for the patch. Looks quite good.
> > > I've a question about the alias: `-z gcs is the same as -z gcs=always.`
> > > Is there a strong need for it? It's quite uncommon to have `-z` option aliases and I'd avoid if there is no compatibility concern.
> >
> >
> > `-z gcs` is there to be consistent will all the other similar options to do with the GNU_PROPERTY bits, where there's a `-z thing` option which forces the GNU_PROPERTY_THING bit to be set.
>
> Other options setting GNU_PROPERTY are quite different in names, `-z force-bti`, `-z force-ibt`. For `-z xxx` without `=`, there is typically a `-z noxxx`, but I don't think we want to add `-z nogcs`.
It looks like there's a mix:
* With ``force-``: ``force-bti``, ``force-ibt``
* Without ``force-``: ``pac-plt``, ``shstk``
The current name is what I've agreed with the people working on the GNU support for this (https://sourceware.org/git/?p=binutils-gdb.git;a=shortlog;h=refs/heads/users/ARM/gcs-binutils-gdb-master, though that currently has ``experimental-`` in the option name which we've agreed should be removed), I'll ask them what they think about not having ``-z gcs`` mean the same as ``-z gcs=always``.
https://github.com/llvm/llvm-project/pull/90732
More information about the llvm-commits
mailing list