Add missing cases in RISCVMCExpr::getVariantKindName
authorSerge Pavlov <sepavloff@gmail.com>
Fri, 19 Mar 2021 07:50:30 +0000 (14:50 +0700)
committerSerge Pavlov <sepavloff@gmail.com>
Thu, 25 Mar 2021 05:57:05 +0000 (12:57 +0700)
Differential Revision: https://reviews.llvm.org/D98929

llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.h

index 8ce2184c7a411e108380bf208fa8cfc5f43c9802..120c6d95bfc06fe0754eeb531ee586835e84a0c6 100644 (file)
@@ -138,7 +138,8 @@ RISCVMCExpr::VariantKind RISCVMCExpr::getVariantKindForName(StringRef name) {
 
 StringRef RISCVMCExpr::getVariantKindName(VariantKind Kind) {
   switch (Kind) {
-  default:
+  case VK_RISCV_Invalid:
+  case VK_RISCV_None:
     llvm_unreachable("Invalid ELF symbol kind");
   case VK_RISCV_LO:
     return "lo";
@@ -160,7 +161,14 @@ StringRef RISCVMCExpr::getVariantKindName(VariantKind Kind) {
     return "tls_ie_pcrel_hi";
   case VK_RISCV_TLS_GD_HI:
     return "tls_gd_pcrel_hi";
+  case VK_RISCV_CALL:
+    return "call";
+  case VK_RISCV_CALL_PLT:
+    return "call_plt";
+  case VK_RISCV_32_PCREL:
+    return "32_pcrel";
   }
+  llvm_unreachable("Invalid ELF symbol kind");
 }
 
 static void fixELFSymbolsInTLSFixupsImpl(const MCExpr *Expr, MCAssembler &Asm) {
index 77038cee4e9d9d09a78e5eaa4e0fcac91028b6c2..2e752c138ecf28ed61ae41c6c85c1e7d0980fa7a 100644 (file)
@@ -37,7 +37,7 @@ public:
     VK_RISCV_CALL,
     VK_RISCV_CALL_PLT,
     VK_RISCV_32_PCREL,
-    VK_RISCV_Invalid
+    VK_RISCV_Invalid // Must be the last item
   };
 
 private: