[llvm] [AArch64] Enable GlobalMerge on externals (PR #158592)

David Green via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 15 13:57:14 PDT 2025


================
@@ -694,12 +694,6 @@ bool AArch64PassConfig::addPreISel() {
     // is disabled as we emit the .subsections_via_symbols directive which
     // means that merging extern globals is not safe.
     bool MergeExternalByDefault = !TM->getTargetTriple().isOSBinFormatMachO();
-
-    // FIXME: extern global merging is only enabled when we optimise for size
-    // because there are some regressions with it also enabled for performance.
----------------
davemgreen wrote:

https://reviews.llvm.org/D61947 mentions one small regression in spec2000, but it was apparently ran with -Oz.

I haven't seen any worrying performance results myself, either on server class cpus or models.

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


More information about the llvm-commits mailing list