diff options
author | wanglei <wanglei@loongson.cn> | 2024-11-21 16:52:38 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-21 16:52:38 +0800 |
commit | 6377ae46a83e52fe1850a42ce8e1ee3e840243ba (patch) | |
tree | e6366151a049823239c98e0a78d938a7b414a1bf /clang/unittests/Serialization/InMemoryModuleCacheTest.cpp | |
parent | bc7f24cd8d6180ba297ea33ef5b4631a1bd26aea (diff) | |
download | llvm-6377ae46a83e52fe1850a42ce8e1ee3e840243ba.zip llvm-6377ae46a83e52fe1850a42ce8e1ee3e840243ba.tar.gz llvm-6377ae46a83e52fe1850a42ce8e1ee3e840243ba.tar.bz2 |
[LoongArch] Fix GOT usage for `non-dso_local` function calls in large code model
This commit fixes an issue in the large code model where non-dso_local
function calls did not use the GOT as expected in PIC mode. Instead,
direct PC-relative access was incorrectly applied, leading to linker
errors when building shared libraries.
For `ExternalSymbol`, it is not possible to determine whether it is
dso_local during pseudo-instruction expansion. We use target flags to
differentiate whether GOT should be used.
Reviewed By: heiher, SixWeining
Pull Request: https://github.com/llvm/llvm-project/pull/117099
Diffstat (limited to 'clang/unittests/Serialization/InMemoryModuleCacheTest.cpp')
0 files changed, 0 insertions, 0 deletions