[PATCH] D113167: [lld-macho]Allow exporting weak_def_can_be_hidden(AKA "autohide") symbols
Shoaib Meenai via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Nov 12 15:20:20 PST 2021
smeenai added a comment.
In D113167#3126069 <https://reviews.llvm.org/D113167#3126069>, @oontvoo wrote:
> - re-arrange the condition a bit.
> - also parallelize scanning the symbol tables in export/unexport-ing. This shows a small improvment in our internal apps:
>
> x ./LLD_no_parallel.txt
> + ./LLD_with_parallel.txt
> +---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
> | + x |
> |+++ +++ + + + x x x x x x xxx|
> | |_____MA______| |________________A________M______||
> +---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
> N Min Max Median Avg Stddev
> x 10 84.01 89.41 88.64 87.693 1.7424061
> + 10 71.9 74.29 72.63 72.753 0.77734663
> Difference at 95.0% confidence
> -14.94 +/- 1.26763
> -17.0367% +/- 1.44553%
> (Student's t, pooled s = 1.34912)
Am I reading that table incorrectly, or do you consider a 17% improvement to be small? :)
================
Comment at: lld/MachO/Symbols.h:163
+ bool weakDefCanBeHidden : 1;
+
----------------
int3 wrote:
> hmm, this brings us to 9 bits of booleans :/
>
> probably fine in practice, but maybe do a quick benchmark before landing this
It won't change the size of the struct, cos of padding. Turns out these structs are laid out suboptimally with regards to padding though; I'll put up a diff to fix that.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D113167/new/
https://reviews.llvm.org/D113167
More information about the llvm-commits
mailing list