[clang] [RISCV][clang] Optimize memory usage of intrinsic lookup table (PR #77487)

Brandon Wu via cfe-commits cfe-commits at lists.llvm.org
Sun Jan 14 23:22:33 PST 2024


================
@@ -416,8 +416,10 @@ class RVVIntrinsic {
   RVVTypePtr getOutputType() const { return OutputType; }
   const RVVTypes &getInputTypes() const { return InputTypes; }
   llvm::StringRef getBuiltinName() const { return BuiltinName; }
-  llvm::StringRef getName() const { return Name; }
-  llvm::StringRef getOverloadedName() const { return OverloadedName; }
+  llvm::StringRef getName() const { return "__riscv_" + Name; }
----------------
4vtomat wrote:

String literal is placed in data segment so its lifetime is the lifetime of the program. StringRef doesn't take the ownership, but string literal is alive until the whole program ends, so I guess it's ok for referencing it?

https://github.com/llvm/llvm-project/pull/77487


More information about the cfe-commits mailing list