[llvm] [PowerPC] Do not merge TLS constants within PPCMergeStringPool.cpp (PR #94059)

Amy Kwan via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 4 21:11:09 PDT 2024


amy-kwan wrote:

> Why does PPC need a custom pass for this instead of using the general GlobalMerge pass? It seems like all the requirements already present in GlobalMerge get rediscovered by this pass step by step.
> 
> Note that the sanitizer-ppc64be-linux buildbot has regular crashes in this pass, but not on every build, so I don't think this is the last issue affecting this pass.

@nikic Thanks for the question. I believe that when this pass was first developed, we found that GlobalMerge did not catch everything that we wanted it to catch. However, looking back, it is probably better for GlobalMerge to be extended to handle more, rather than to make something PPC-specific. We are aware of this, and have plans to work on eventually extend GlobalMerge instead.

For now, this PR blocks an issue with respect to merging TLS constants in the pooled string structure, thus this PR is still needed for the time being.

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


More information about the llvm-commits mailing list