--
You received this message because you are subscribed to the Google Groups "X86-64 System V Application Binary Interface" group.
To unsubscribe from this group and stop receiving emails from it, send an email to x86-64-abi+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/x86-64-abi/CAJENXgsjJZF47Q2ai1JTQwdOGP60Vq%3D2AwtKegk_7%3De19ZtqYQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
This CET ABI issue was raised during glibc discussion in GCC Cauldron. The conclusion was CET ABI wouldn’t be changed. It’s not because it’s a better option, but because it’s been finalized for 2 years (in 2017). And the implementation has been included in Linux distributions already. There's no obvious reason to change it w/o a pretty better solution.
On the other hand, Intel wants to support it in LLVM lld anyway. But we don’t want to force lld developers to do what they don’t want. So now the ball is at lld side. If lld would like to follow the CET ABI, we’re willing to submit the corresponding lld patches. If not, we will submit the lld patches supporting 32-byte PLTs. The disadvantage of the latter is ABI is incompatible between GCC and LLVM for CET. It may cause potential issues in some tools which has dependence on PLT size and layout. But we don’t have known samples yet. From our estimation, the risk may be low.
I’m looking forward to hearing your opinions and moving it forward.
Thanks,
Annita
Hi,
On Wed, 9 Oct 2019, Annita Zhang wrote:
> This CET ABI issue was raised during glibc discussion in GCC Cauldron.
> The conclusion was CET ABI wouldn’t be changed. It’s not because it’s a
> better option, but because it’s been finalized for 2 years (in 2017).
> And the implementation has been included in Linux distributions already.
> There's no obvious reason to change it w/o a pretty better solution.
>
> On the other hand, Intel wants to support it in LLVM lld anyway. But we
> don’t want to force lld developers to do what they don’t want. So now
> the ball is at lld side. If lld would like to follow the CET ABI, we’re
> willing to submit the corresponding lld patches. If not, we will submit
> the lld patches supporting 32-byte PLTs. The disadvantage of the latter
> is ABI is incompatible between GCC and LLVM for CET. It may cause
> potential issues in some tools which has dependence on PLT size and
> layout. But we don’t have known samples yet. From our estimation, the
> risk may be low.
If you're willing to change the CET ABI for llvm, then it simply means
that the claim that we can't change the PLT format because "it’s been
finalized for 2 years" is wrong. That implies we can change it to
something nice also on the binutils side, for everyone. So, is that the
case?
Ciao,
Michael.