Alexei Frolov
|
3fde6b116f
|
pw_toolchain_size_report template
This change adds a GN template which creates a size report card across
a set of different toolchains. The toolchains are defined in a build
variable, each with an optional linker script and Bloaty config. The
size report template builds a base and diff executable with each of the
toolchains and compares the size difference of each.
Example output for the host target:
simple_bloat_toolchain
──────────────────────
┌───────────┬─────────┬────────┬───────┬───────┐
│ Label │ Segment │ Before │ Delta │ After │
├═══════════┼═════════┼════════┼═══════┼═══════┤
│ gcc -Og │ CODE │ 413 │ +32 │ 445 │
│ │ RAM │ 576 │ +8 │ 584 │
├───────────┼─────────┼────────┼───────┼───────┤
│ gcc -Os │ CODE │ 429 │ +16 │ 445 │
│ │ RAM │ 576 │ +8 │ 584 │
├───────────┼─────────┼────────┼───────┼───────┤
│ gcc -O2 │ CODE │ 429 │ +32 │ 461 │
│ │ RAM │ 576 │ +8 │ 584 │
├───────────┼─────────┼────────┼───────┼───────┤
│ clang -Og │ CODE │ 448 │ +32 │ 480 │
│ │ RAM │ 113 │ +15 │ 128 │
├───────────┼─────────┼────────┼───────┼───────┤
│ clang -Os │ CODE │ 432 │ +16 │ 448 │
│ │ RAM │ 113 │ +15 │ 128 │
├───────────┼─────────┼────────┼───────┼───────┤
│ clang -O2 │ CODE │ 448 │ +80 │ 528 │
│ │ RAM │ 113 │ +15 │ 128 │
└───────────┴─────────┴────────┴───────┴───────┘
Change-Id: I2c65f4d4f61354b9779628f207297eacd04470b9
|
2019-12-23 20:37:42 +00:00 |
|