You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Unfortunately that's incomplete. It's adding the "absolute" address of __gnu_local_gp, which won't work to get a relative address. It really should be doing what is done for N64 below in the function, from what I can tell.
Activity
chmeeedalf commentedon Dec 18, 2021
Looking at it more, n32 is supposed to use whatever label, not fixed at __gnu_local_gp
atanasyan commentedon Dec 18, 2021
Could you check that this patch fixes the issue? The patch adds the
addu
instruction only.__gnu_local_gp
is a separate problem.pr52785.patch.txt
rasul247 commentedon Dec 18, 2021
chmeeedalf commentedon Dec 20, 2021
Unfortunately that's incomplete. It's adding the "absolute" address of __gnu_local_gp, which won't work to get a relative address. It really should be doing what is done for N64 below in the function, from what I can tell.
wzssyqa commentedon Feb 3, 2024
It's due to a typo in
MipsTargetELFStreamer::emitDirectiveCpsetup
This patch should work:
MIPS: fix emitDirectiveCpsetup on N32
MIPS: fix emitDirectiveCpsetup on N32
MIPS: fix emitDirectiveCpsetup on N32
MIPS: fix emitDirectiveCpsetup on N32 (#80534)
MIPS: fix emitDirectiveCpsetup on N32 (llvm#80534)
MIPS: fix emitDirectiveCpsetup on N32 (llvm#80534)