summaryrefslogtreecommitdiff
path: root/arch/riscv/errata
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2021-05-15 00:37:41 +0300
committerPalmer Dabbelt <palmerdabbelt@google.com>2021-05-29 21:40:16 +0300
commitec3a5cb61146c91f0f7dcec8b7e7157a4879a9ee (patch)
tree6493dcde67f2eeb3473eb0e6f30c4096e9e0b658 /arch/riscv/errata
parentbab0d47c0ebb50ae0bcfa4e84986a60113bf7d6b (diff)
downloadlinux-ec3a5cb61146c91f0f7dcec8b7e7157a4879a9ee.tar.xz
riscv: Use -mno-relax when using lld linker
lld does not implement the RISCV relaxation optimizations like GNU ld therefore disable it when building with lld, Also pass it to assembler when using external GNU assembler ( LLVM_IAS != 1 ), this ensures that relevant assembler option is also enabled along. if these options are not used then we see following relocations in objects 0000000000000000 R_RISCV_ALIGN *ABS*+0x0000000000000002 These are then rejected by lld ld.lld: error: capability.c:(.fixup+0x0): relocation R_RISCV_ALIGN requires unimplemented linker relaxation; recompile with -mno-relax but the .o is already compiled with -mno-relax Signed-off-by: Khem Raj <raj.khem@gmail.com> Reviewed-by: Nathan Chancellor <nathan@kernel.org> Signed-off-by: Palmer Dabbelt <palmerdabbelt@google.com>
Diffstat (limited to 'arch/riscv/errata')
0 files changed, 0 insertions, 0 deletions