HomeFreeBSD

Merge commit cf721e29c6a3 from llvm git (by Amy Kwan):

Description

Merge commit cf721e29c6a3 from llvm git (by Amy Kwan):

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

This patch prevents thread-local constants to be merged within
PPCMergeStringPool.cpp.

The PPCMergeStringPool pass primarily merges non-thread-local constants
together, and thread-local constants should not be mixed together with
other (non-thread-local) constants. In the event that thread-local and
other non-thread-local constants are pooled together, the
llvm.threadlocal.address intrinsic can fail as it expects its argument
to be a thread-local global value, but the merged string structure
created by the PPCMergeStringPool pass is not thread-local as a whole.

This fixes an error "llvm.threadlocal.address first argument must be a
GlobalValue" when building the math/nauty port on PowerPC architectures.

PR: 289122
Reported by: pkubaj
MFC after: 3 days

Details

Provenance
dimAuthored on Aug 27 2025, 6:51 PM
Parents
rGb2f394b90062: tzcode: Add a test case for thin jails
Branches
Unknown
Tags
Unknown