mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-21 23:20:20 +00:00
LibELF: Swap the arguments for negative_offset_from_tls_block_end
Now that m_tls_offset points to the start of the TLS block the argument order makes more sense this way.
This commit is contained in:
parent
251eaad8f0
commit
371c852fc0
Notes:
sideshowbarker
2024-07-18 10:31:39 +09:00
Author: https://github.com/gunnarbeutner Commit: https://github.com/SerenityOS/serenity/commit/371c852fc01 Pull-request: https://github.com/SerenityOS/serenity/pull/8414
2 changed files with 4 additions and 4 deletions
|
@ -496,7 +496,7 @@ DynamicLoader::RelocationResult DynamicLoader::do_relocation(const ELF::DynamicO
|
|||
}
|
||||
VERIFY(dynamic_object_of_symbol);
|
||||
size_t addend = relocation.addend_used() ? relocation.addend() : *patch_ptr;
|
||||
*patch_ptr = negative_offset_from_tls_block_end(symbol_value + addend, dynamic_object_of_symbol->tls_offset().value());
|
||||
*patch_ptr = negative_offset_from_tls_block_end(dynamic_object_of_symbol->tls_offset().value(), symbol_value + addend);
|
||||
break;
|
||||
}
|
||||
#ifndef __LP64__
|
||||
|
@ -525,7 +525,7 @@ DynamicLoader::RelocationResult DynamicLoader::do_relocation(const ELF::DynamicO
|
|||
return RelocationResult::Success;
|
||||
}
|
||||
|
||||
ssize_t DynamicLoader::negative_offset_from_tls_block_end(size_t value_of_symbol, ssize_t tls_offset) const
|
||||
ssize_t DynamicLoader::negative_offset_from_tls_block_end(ssize_t tls_offset, size_t value_of_symbol) const
|
||||
{
|
||||
ssize_t offset = static_cast<ssize_t>(tls_offset + value_of_symbol);
|
||||
// At offset 0 there's the thread's ThreadSpecificData structure, we don't want to collide with it.
|
||||
|
@ -554,7 +554,7 @@ void DynamicLoader::copy_initial_tls_data_into(ByteBuffer& buffer) const
|
|||
if (symbol.type() != STT_TLS)
|
||||
return IterationDecision::Continue;
|
||||
|
||||
ssize_t negative_offset = negative_offset_from_tls_block_end(symbol.value(), m_tls_offset);
|
||||
ssize_t negative_offset = negative_offset_from_tls_block_end(m_tls_offset, symbol.value());
|
||||
VERIFY(symbol.size() != 0);
|
||||
VERIFY(buffer.size() + negative_offset + symbol.size() <= buffer.size());
|
||||
memcpy(buffer.data() + buffer.size() + negative_offset, tls_data + symbol.value(), symbol.size());
|
||||
|
|
|
@ -131,7 +131,7 @@ private:
|
|||
};
|
||||
RelocationResult do_relocation(const DynamicObject::Relocation&, ShouldInitializeWeak should_initialize_weak);
|
||||
size_t calculate_tls_size() const;
|
||||
ssize_t negative_offset_from_tls_block_end(size_t value_of_symbol, ssize_t tls_offset) const;
|
||||
ssize_t negative_offset_from_tls_block_end(ssize_t tls_offset, size_t value_of_symbol) const;
|
||||
|
||||
String m_filename;
|
||||
String m_program_interpreter;
|
||||
|
|
Loading…
Reference in a new issue