1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-28 06:17:34 +00:00

Toolchain: Enable LLVM Profile instrumentation

Add a patch to let llvm's InstrProfiling modules know serenity supports
all the Unix-y features required to make -fprofile-instr-generate and
-fcoverage-mapping work properly on target.
This commit is contained in:
Andrew Kaster 2022-03-04 17:45:04 -07:00 committed by Andreas Kling
parent 9b041786ac
commit 4334bd06b8
12 changed files with 94 additions and 10 deletions

View file

@ -76,3 +76,12 @@ shared libraries.
Symbol versioning is disabled, as the SerenityOS loader doesn't support
it, and the ELF sections that store version data would just waste space.
## `0009-compiler-rt-llvm-Enable-profile-instrumentation-for-.patch`
Enable profile instrumentation for SerenityOS
Treat SerenityOS the same as other *NIX platforms that behave close
enough to linux to use the pre-canned InstrProfiling implementation.
Curiously, enabling profiling for the SerenityOS target changes the ELF
OS ABI for userspace binaries to 3, or GNU/Linux.