diff options
author | Nathan Chancellor <nathan@kernel.org> | 2021-03-23 15:16:50 -0700 |
---|---|---|
committer | Nathan Chancellor <nathan@kernel.org> | 2021-03-24 18:11:37 -0700 |
commit | ef58ae86ba778ed7d01cd3f6bd6d08f943abab44 (patch) | |
tree | 38f55938697203a48b81786a1027790c2393ce83 /llvm/lib/ToolDrivers/llvm-lib/LibDriver.cpp | |
parent | dd388ba3e0b0a5f06565d0bcb6e1aebb5daac065 (diff) | |
download | llvm-ef58ae86ba778ed7d01cd3f6bd6d08f943abab44.zip llvm-ef58ae86ba778ed7d01cd3f6bd6d08f943abab44.tar.gz llvm-ef58ae86ba778ed7d01cd3f6bd6d08f943abab44.tar.bz2 |
[RISCV] Fix mcount name
GCC's name for this symbol is _mcount, which the Linux kernel expects in
a few different place:
$ echo 'int main(void) { return 0; }' | riscv32-linux-gcc -c -pg -o tmp.o -x c -
$ llvm-objdump -dr tmp.o | grep mcount
0000000c: R_RISCV_CALL _mcount
$ echo 'int main(void) { return 0; }' | riscv64-linux-gcc -c -pg -o tmp.o -x c -
$ llvm-objdump -dr tmp.o | grep mcount
000000000000000c: R_RISCV_CALL _mcount
$ echo 'int main(void) { return 0; }' | clang -c -pg -o tmp.o --target=riscv32-linux-gnu -x c -
$ llvm-objdump -dr tmp.o | grep mcount
0000000a: R_RISCV_CALL_PLT mcount
$ echo 'int main(void) { return 0; }' | clang -c -pg -o tmp.o --target=riscv64-linux-gnu -x c -
$ llvm-objdump -dr tmp.o | grep mcount
000000000000000a: R_RISCV_CALL_PLT mcount
Set MCountName to "_mcount" in RISCVTargetInfo then prevent it from
getting overridden in certain OSTargetInfo constructors.
Reviewed By: MaskRay
Differential Revision: https://reviews.llvm.org/D98881
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Diffstat (limited to 'llvm/lib/ToolDrivers/llvm-lib/LibDriver.cpp')
0 files changed, 0 insertions, 0 deletions