Skip to content
  • Michael Matz's avatar
    riscv: Make PLT reloc be AUTO_GOT · 9b0efa93
    Michael Matz authored
    relocs against defined symbols are replaced by relative
    relocs, when a GOT slot is created.  But code relocs (usually
    calls via PLT) use the plt_offset member of attr, not the got_offset
    member, so the "huh" warning was triggered in the case of calls to
    static functions (the code still worked).
    
    So, for now just use the AUTO_GOT_PLT mechanism.  We could also
    emit a non-PLT reloc in the backend for calls to VT_STATIC functions
    (like the x86-64 backend does) and do the same as for x86-64 in
    build_got_entries (which transforms PLT32 into PC32 relocs, riscv
    would transform CALL_PLT into CALL relocs).  Maybe later.
    9b0efa93