On 11/15/23 18:51, Tatsuyuki Ishi wrote:
On Nov 16, 2023, at 10:07, Jeff Law <jeffreya...@gmail.com> wrote:
Based on what I have read in the AArch64 backend, there are two ways to
do this: introduce a custom calling convention, or put in a RTX insn
that covers the whole sequence. Ideally we should do the first, but then
there’s the label issue and it’s quite a bit more complicated. So I’m
sticking with this for now.
As I said, I think we're OK here. We can always revamp as we get
experience with the implementation -- I don't think any of the stuff
we're talking about is an ABI change, they're just implementation details.
Sorry for all the delay on this. My progress has been (and still)
blocked on supporting relaxation of TLSDESC in binutils (turns out you
can’t run static binaries without relaxing it first). But that doesn’t
seem exactly easy to do either, because relaxation that involves GOT
elimination isn’t something we have in the RISC-V backend.
Note that binutils is due for another release in the next month or two.
It'd certainly be helpful to have any issues there resolved in time for
that release.
I’ll try to send a new version of this patch and get this unblocked on
GCC side first.
Sounds good. We can always guard its use behind a feature test for GAS
support.
Jeff