general comments on sysiinit patches

Sebastian Huber sebastian.huber at embedded-brains.de
Wed Jan 27 14:49:22 UTC 2016


On 27/01/16 15:01, Joel Sherrill wrote:
>
>
>         + Do you have any size metrics for current --disable-posix on
>         a BSP with function sections enabled versus this new way?
>
>
>     No, I was not interested in this comparison since my goal is to
>     always enable POSIX in the long run. The size will drop a bit. I
>     used the SIS BSP for comparison since it uses the function/data
>     sections for quite a while.
>
>
> OK. Although not 100% accurate, comparing test sizes from 4.11 with 
> POSIX on and master with POSIX on should give an indication of the 
> impact.  This type of comparison has been more than adequate to show 
> how other things that impact code size have worked out. We know the 
> core capabilities required by each test haven't changed. What happened 
> to its footprint between two release points is an important measure.

The POSIX API is disabled in 4.9 and 4.10.  In 4.11 and 4.12 sizes are
presented with POSIX enabled/disabled. The 4.12 without prefix is with the
linker set based initialization.  In 4.12 the Newlib internal locks are
enabled.12.  The PNOLS version is with POSIX enabled and the old 
initialization
infrastructure.

Executable sizes for the SPARC/SIS ticker.exe.

||              ||= Text =||= Data =||= BSS =||= Workspace =||= Non-Text =||
||= 4.9        =||  80384 ||   2532 ||  2996 ||       51432 || 56960 ||
||= 4.10       =|| 124384 ||   1828 ||  2384 ||       51056 || 55268 ||
||= 4.11       =|| 100592 ||   1616 ||  7008 ||       44120 || 52744 ||
||= 4.11/POSIX =|| 104608 ||   1760 ||  8528 ||       45200 || 55488 ||
||= 4.12/PNOLS =|| 105296 ||   1872 ||  8512 ||       45376 || 55760 ||
||= 4.12/POSIX =|| 101680 ||   1808 ||  6592 ||       45336 || 53736 ||
||= 4.12       =|| 101472 ||   1808 ||  6528 ||       44336 || 52672 ||

The huge increase in the test size from 4.9 to 4.10 is mostly due to the
introduction of the pipe() support which pulls in sprintf().

The increase of the BSS section from 4.10 to 4.11 is due to the static
initialization of the scheduler data structures (move from workspace to 
BSS).

Executable sizes for the SPARC/SIS minimum.exe.

||              ||= Text =||= Data =||= BSS =||= Workspace =||= Non-Text =||
||= 4.9        =||  45808 ||   2324 ||  2708 ||        3288 || 8320 ||
||= 4.10       =||  30032 ||   1300 ||  1296 ||        3240 || 5836 ||
||= 4.11       =||  34032 ||    320 ||  2976 ||        2000 || 5296 ||
||= 4.11/POSIX =||  41664 ||   1168 ||  4480 ||        2216 || 7864 ||
||= 4.12/PNOLS =||  39904 ||   1232 ||  4480 ||        2136 || 7848 ||
||= 4.12/POSIX =||  29104 ||    272 ||  2304 ||        2128 || 4704 ||
||= 4.12       =||  28976 ||    272 ||  2240 ||        1928 || 4440 ||

-- 
Sebastian Huber, embedded brains GmbH

Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone   : +49 89 189 47 41-16
Fax     : +49 89 189 47 41-09
E-Mail  : sebastian.huber at embedded-brains.de
PGP     : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.



More information about the devel mailing list