Skip to content

SDK version 14.2 increases image size significantly #46422

Closed as not planned
Closed as not planned
@wcappelle

Description

@wcappelle

Describe the bug
When building my application with the 14.2 zephyr SDK, the image size of my binary (same code) increases with about 18kB in comparison with the 13.2 zephyr SDK.
I've made 2 rom reports from both sdk's and can see most of the extra size is from following symbols which are added:

│   ├── __aeabi_cdcmpeq                                                                            16   
│   ├── __aeabi_cdrcmple                                                                           32   
│   ├── __aeabi_d2iz                                                                              100   
│   ├── __aeabi_dadd                                                                             1444   
│   ├── __aeabi_dcmpeq                                                                             12   
│   ├── __aeabi_dcmpge                                                                             18   
│   ├── __aeabi_dcmpgt                                                                             18   
│   ├── __aeabi_dcmple                                                                             18   
│   ├── __aeabi_dcmplt                                                                             18   
│   ├── __aeabi_dcmpun                                                                             56   
│   ├── __aeabi_ddiv                                                                             1280   
│   ├── __aeabi_dmul                                                                             1072   
│   ├── __aeabi_dsub                                                                             1452   
│   ├── __aeabi_i2d                                                                                88   
│   ├── __ascii_mbtowc                                                                             36   
│   ├── __ascii_wctomb                                                                             26   
│   ├── __ashldi3                                                                                  24   
│   ├── __ashrdi3                                                                                  26   
│   ├── __d2b                                                                                     200   
│   ├── __eqdf2                                                                                   116   
│   ├── __global_locale                                                                           364   
│   ├── __gtdf2                                                                                   184   
│   ├── __hi0bits                                                                                  52   
│   ├── __i2b                                                                                      44   
│   ├── __lo0bits                                                                                  92   
│   ├── __lshift                                                                                  220   
│   ├── __ltdf2                                                                                   184   
│   ├── __mcmp                                                                                     54   
│   ├── __mdiff                                                                                   304   
│   ├── __mprec_bigtens                                                                            40   
│   ├── __mprec_tens                                                                              200   
│   ├── __muldi3                                                                                   72   
│   ├── __multadd                                                                                 136   
│   ├── __multiply                                                                                352   
│   ├── __pow5mult                                                                                184   
│   ├── _ctype_                                                                                   257   
│   ├── _dtoa_r                                                                                  3124   

most added symbols are listed, but not all.

I'm building for an ARM target (STM32L010RB) with zephyr release 3.0.0 + some custom patches
i've build with zephyr release 3.1.0 and the same increase was noticeable.

Logs and console output
i have 2 logfiles of the rom reports, i don't want to put them public, but you can request them on a personal base.

Environment (please complete the following information):

Additional context
Maybe good to mention that logging is disabled in my configuration.
I see the following symbols have a big increase with the latest sdk

 │   ├── _svfprintf_r                                                                             5160    (before:512)
│   ├── _vfiprintf_r                                                                             2148    (before:628)

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions