aboutsummaryrefslogtreecommitdiff
path: root/llvm/tools/llvm-objdump/llvm-objdump.cpp
diff options
context:
space:
mode:
authorPhilip Reames <preames@rivosinc.com>2025-03-20 18:56:56 -0700
committerGitHub <noreply@github.com>2025-03-20 18:56:56 -0700
commit631769f2a05a082eafa03b7f99502381da704d7d (patch)
treeed5e57e9cad6abea07f392320a0d2b7d2eda40dc /llvm/tools/llvm-objdump/llvm-objdump.cpp
parent902078350e0dd2b5a7333328153032f05dc4b81c (diff)
downloadllvm-631769f2a05a082eafa03b7f99502381da704d7d.zip
llvm-631769f2a05a082eafa03b7f99502381da704d7d.tar.gz
llvm-631769f2a05a082eafa03b7f99502381da704d7d.tar.bz2
[LLD][RISCV] Add relaxation for absolute int12 Hi20Lo12 (#86124)
If we have an absolute address whose high bits are known to be a sign extend of the low 12 bits, we can avoid emitting the LUI entirely. This is implemented in an analogous manner to the gp relative relocations - defining an internal usage relocation type. Since 12 bits (really 11 since the high bit must be zero in user code) is less than one page, all of these offsets fit in the null page. As such, the only application of these is likely to be undefined weak symbols except for embedded use cases. I'm mostly posting this for completeness sake.
Diffstat (limited to 'llvm/tools/llvm-objdump/llvm-objdump.cpp')
0 files changed, 0 insertions, 0 deletions