[clang] [llvm] [ThinLTO] Support dead RTTI data elimination under -fno-split-lto-unit (PR #126336)

via cfe-commits cfe-commits at lists.llvm.org
Thu Feb 13 22:30:48 PST 2025


================
@@ -1920,6 +1924,18 @@ Error LTO::runThinLTO(AddStreamFn AddStream, FileCache Cache,
       ThinLTO.CombinedIndex, WholeProgramVisibilityEnabledInLTO,
       DynamicExportSymbols, VisibleToRegularObjSymbols);
 
+  Triple TT(getTargetTriple());
+  DeadRTTIElimIndex(ThinLTO.CombinedIndex, TT).run();
+
+  if (!ThinLTO.CombinedIndex.withGlobalValueDeadStripping())
+    computeDeadSymbolsWithConstProp(ThinLTO.CombinedIndex, GUIDPreservedSymbols,
+                                    IsPrevailing, Conf.OptLevel > 0);
----------------
luxufan wrote:

Yes, we can, but it would require refactoring the computeDeadSymbolsWithConstProp function. Because the signature of these two isPrevailing functions are different

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


More information about the cfe-commits mailing list