mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-21 12:30:06 +00:00
powerpc64: Fix syscall_cancel build for powerpc64le-linux-gnu [BZ #32125]
In __syscall_cancel_arch, there's a tail call to __syscall_do_cancel. On P10, since the caller uses the TOC and the callee is using PC-relative addressing, there's only a branch instruction with no NOPs to restore the TOC, which causes the build error. The fix involves adding the NOTOC directive to the branch instruction, informing the linker not to generate a TOC stub, thus resolving the issue.
This commit is contained in:
parent
3fc063dee0
commit
29f0db6a2e
@ -354,7 +354,7 @@ LT_LABELSUFFIX(name,_name_end): ; \
|
||||
|
||||
#ifdef SHARED
|
||||
# define TAIL_CALL_NO_RETURN(__func) \
|
||||
b JUMPTARGET(__func)
|
||||
b JUMPTARGET (NOTOC (__func))
|
||||
#else
|
||||
# define TAIL_CALL_NO_RETURN(__func) \
|
||||
.ifdef .Local ## __func; \
|
||||
|
Loading…
Reference in New Issue
Block a user