[llvm-dev] [PPC] Linker fails on -fstack-protector

Tim Shen via llvm-dev llvm-dev at lists.llvm.org
Mon Jan 25 11:57:43 PST 2016


When -fstack-protector is turned on, linker fails to find the symbol
"__stack_chk_guard"
because at least for powerpc64le, glibc doesn't provide this symbol.
Instead, they put the stack guard into TCB.

x86 fixed this issue by injecting a special address space (which is later
translated to TCB register access) and hard code the offset of stack_guard,
but I don't see a easy way to handle address spaces in ppc.

A cleaner solution could be adding an IR intrinsic llvm.get_tcb_address()
and hard code the offset of stack_guard member, since they aren't supposed
to change.

Details are in the bug: https://llvm.org/bugs/show_bug.cgi?id=26226

Any ideas?

Thanks!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160125/a7e9306f/attachment.html>


More information about the llvm-dev mailing list