Home
last modified time | relevance | path

Searched hist:"53644 fa8221b5c7b726beeda78b253f39abe479b" (Results 1 – 2 of 2) sorted by relevance

/rk3399_ARM-atf/include/lib/libc/
H A Dcdefs.h53644fa8221b5c7b726beeda78b253f39abe479b Mon Apr 07 14:23:09 UTC 2025 Boyan Karatotev <boyan.karatotev@arm.com> fix(libc): make sure __init functions are garbage collected

RECLAIM_INIT_CODE is useful to remove code that is only necessary during
boot. However, these functions are generally called once and as such
prime candidates for inlining. When building with LTO, the compiler is
pretty good at inlining every single one, making this option pointless.

So tell the compiler to not inline these functions. This ensures they
are kept separate and they can be garbage collected later. This is
expected to cost a little bit of speed due to the extra branching.

Change-Id: Ie83a9ec8db03cb42139742fc6d728d12ce8549d3
Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
/rk3399_ARM-atf/docs/design/
H A Dfirmware-design.rst53644fa8221b5c7b726beeda78b253f39abe479b Mon Apr 07 14:23:09 UTC 2025 Boyan Karatotev <boyan.karatotev@arm.com> fix(libc): make sure __init functions are garbage collected

RECLAIM_INIT_CODE is useful to remove code that is only necessary during
boot. However, these functions are generally called once and as such
prime candidates for inlining. When building with LTO, the compiler is
pretty good at inlining every single one, making this option pointless.

So tell the compiler to not inline these functions. This ensures they
are kept separate and they can be garbage collected later. This is
expected to cost a little bit of speed due to the extra branching.

Change-Id: Ie83a9ec8db03cb42139742fc6d728d12ce8549d3
Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>