mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-16 01:16:36 +00:00
ELF: Remove lock from MTE global relocation handling code.
This lock is unnecessary because we can add the relocations to shards and let them be sorted later. Reviewers: smithp35, fmayer, MaskRay Reviewed By: MaskRay Pull Request: https://github.com/llvm/llvm-project/pull/135123
This commit is contained in:
parent
a4e6a771a6
commit
f53eb88d25
@ -847,9 +847,8 @@ static void addRelativeReloc(Ctx &ctx, InputSectionBase &isec,
|
||||
Partition &part = isec.getPartition(ctx);
|
||||
|
||||
if (sym.isTagged()) {
|
||||
std::lock_guard<std::mutex> lock(ctx.relocMutex);
|
||||
part.relaDyn->addRelativeReloc(ctx.target->relativeRel, isec, offsetInSec,
|
||||
sym, addend, type, expr);
|
||||
part.relaDyn->addRelativeReloc<shard>(ctx.target->relativeRel, isec,
|
||||
offsetInSec, sym, addend, type, expr);
|
||||
// With MTE globals, we always want to derive the address tag by `ldg`-ing
|
||||
// the symbol. When we have a RELATIVE relocation though, we no longer have
|
||||
// a reference to the symbol. Because of this, when we have an addend that
|
||||
|
Loading…
x
Reference in New Issue
Block a user