aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Object/RelocationResolver.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Object/RelocationResolver.cpp')
-rw-r--r--llvm/lib/Object/RelocationResolver.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/lib/Object/RelocationResolver.cpp b/llvm/lib/Object/RelocationResolver.cpp
index 564d9da..d9bb8f1 100644
--- a/llvm/lib/Object/RelocationResolver.cpp
+++ b/llvm/lib/Object/RelocationResolver.cpp
@@ -457,6 +457,12 @@ static bool supportsRISCV(uint64_t Type) {
case ELF::R_RISCV_SUB32:
case ELF::R_RISCV_ADD64:
case ELF::R_RISCV_SUB64:
+ // Because the unrelocated value generated by .uleb128 A-B (used by
+ // loclists/rnglists) is meaningful, DebugInfoDWARF does not inspect the
+ // relocations. We declare support for the two relocation types without an
+ // (unreachable) implementation.
+ case ELF::R_RISCV_SET_ULEB128:
+ case ELF::R_RISCV_SUB_ULEB128:
return true;
default:
return false;