[hwasan] Replace j __interceptor_sigsetjmp instead with tail for RISC-V
authorKhem Raj <raj.khem@gmail.com>
Sat, 14 Jan 2023 01:44:38 +0000 (17:44 -0800)
committerFangrui Song <i@maskray.me>
Sat, 14 Jan 2023 01:44:38 +0000 (17:44 -0800)
commitdc9c41125caa07b4f4ad0b6cb3348b499dbcf3a5
treeeb889eed7feec39d3e4a4796bd8dcace6d5a917c
parente70ae0f46bd5553f0702c5d1e30c5dd6f45a8c01
[hwasan] Replace j __interceptor_sigsetjmp instead with tail for RISC-V

R_RISCV_JAL referencing a preemptible symbol is disallowed with ld.lld and binutils 2.40 (https://sourceware.org/PR28509)

    riscv64-yoe-linux-ld: relocation R_RISCV_JAL against `__interceptor_sigsetjmp' which may bind externally can not be used when making a shared object; recompile with -fPIC

Reviewed By: kito-cheng, MaskRay

Differential Revision: https://reviews.llvm.org/D141656
compiler-rt/lib/hwasan/hwasan_setjmp_riscv64.S