ladybird/Userland/Libraries/LibELF
Gunnar Beutner 06883ed8a3 Kernel+Userland: Make the stack alignment comply with the System V ABI
The System V ABI for both x86 and x86_64 requires that the stack pointer
is 16-byte aligned on entry. Previously we did not align the stack
pointer properly.

As far as "main" was concerned the stack alignment was correct even
without this patch due to how the C++ _start function and the kernel
interacted, i.e. the kernel misaligned the stack as far as the ABI
was concerned but that misalignment (read: it was properly aligned for
a regular function call - but misaligned in terms of what the ABI
dictates) was actually expected by our _start function.
2021-07-10 01:41:57 +02:00
..
Arch Kernel+Userland: Make the stack alignment comply with the System V ABI 2021-07-10 01:41:57 +02:00
AuxiliaryVector.h Kernel: Properly set up the userland context for new processes on x86_64 2021-06-28 22:29:28 +02:00
CMakeLists.txt LibELF+LibTest: Fix serenity_install_sources() paths 2021-03-15 09:06:10 +01:00
CoreDump.h AK: Implement String::find_any_of() and StringView::find_any_of() 2021-07-02 21:54:21 +02:00
DynamicLinker.cpp Kernel+Userland: Make the stack alignment comply with the System V ABI 2021-07-10 01:41:57 +02:00
DynamicLinker.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
DynamicLoader.cpp LibELF: Fix loading libs with a .text segment that's not page-aligned 2021-07-07 11:53:17 +02:00
DynamicLoader.h LibELF: Swap the arguments for negative_offset_from_tls_block_end 2021-07-04 01:07:28 +02:00
DynamicObject.cpp LibELF: Implement support for RELA relocations 2021-07-01 10:50:00 +02:00
DynamicObject.h LibELF: Save the negative TLS offset in m_tls_offset 2021-07-04 01:07:28 +02:00
Hashes.h AK+Userland: Use akaster@serenityos.org for my copyright headers 2021-05-30 14:35:34 +01:00
Image.cpp Kernel+LibELF: Don't demangle symbols in the kernel 2021-07-06 19:08:22 +02:00
Image.h Kernel+LibELF: Don't demangle symbols in the kernel 2021-07-06 19:08:22 +02:00
Validation.cpp LibELF: Check for missing PT_LOAD alignment header value 2021-07-01 10:50:49 +02:00
Validation.h Kernel+LibELF: Add support for validating and loading ELF64 executables 2021-06-28 22:29:28 +02:00