Joseph, do you have a benchmark to measure libgcc overhead?
I tried a following
cat "int main()
{
return 42;
}" > x.c
gcc x.c -O3 -o nogcc
gcc x.c -O3 -lgcc -o withgcc
time for I in `seq 1 10000`; do ./nogcc; done
time for I in `seq 1 10000`; do ./withgcc; done
And I cannot distinguish these from noise. When I linked with -lpthread there was a noticable slowdown.
Joseph, do you have a benchmark to measure libgcc overhead?
I tried a following
cat "int main()
{
return 42;
}" > x.c
gcc x.c -O3 -o nogcc
gcc x.c -O3 -lgcc -o withgcc
time for I in `seq 1 10000`; do ./nogcc; done
time for I in `seq 1 10000`; do ./withgcc; done
And I cannot distinguish these from noise. When I linked with -lpthread there was a noticable slowdown.