While compiler-specific libraries are intended to improve the performance of your application, they increase the size of your binaries.
Certain compiler options may improve the code size.
Options to specify:
Linux* and macOS*: | -ffreestanding |
Windows*: | /Qfreestanding |
Advantages of this method: |
The compiler will not assume the presence of compiler-specific libraries. It will generate only calls that appear in the source code. |
Disadvantages of this method: |
This method may sacrifice performance if the library codes were in hotspots. Also, because we cannot assume any libraries, some compiler optimizations will be suppressed. |
Notes:
This option implies option -fno-builtin; you can override that default by explicitly specifying option -fbuiltin.
Depending on code characteristics, this option can sometimes increase binary size.