Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Convert Inet::InterfaceId to a class #10979

Merged
merged 3 commits into from
Oct 27, 2021

Conversation

kpschoedel
Copy link
Contributor

Problem

The current #if+typedef requires the actual definition to be visible
at every appearance, rather than merely an opaque forward class declaration,
which is an obstace to #7715 Virtualize System and Inet interfaces.

Change overview

Convert InterfaceId to a class. Some free functions become class methods,
and INET_NULL_INTERFACEID is replaced by a default-constructed
InterfaceId.

Testing

CI; no changes to functionality intended.

#### Problem

The current `#if`+`typedef` requires the actual definition to be visible
at every appearance, rather than merely an opaque forward class declaration,
which is an obstace to project-chip#7715 _Virtualize System and Inet interfaces_.

#### Change overview

Convert `InterfaceId` to a class. Some free functions become class methods,
and `INET_NULL_INTERFACEID` is replaced by a default-constructed
`InterfaceId`.

#### Testing

CI; no changes to functionality intended.
@kpschoedel
Copy link
Contributor Author

kpschoedel commented Oct 26, 2021

PR #10979: Size comparison from 596d838 to a9b96b8

Increases above 0.25%:

platform target config section 596d838 a9b96b8 change % change
linux shell debug .text 599458 601586 2128 0.4
599458 601586 2128 0.4
Increases (32 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 596d838 a9b96b8 change % change
efr32 lighting-app BRD4161A .text 735912 736104 192 0.0
735912 736104 192 0.0
BRD4161A+rpc .text 723336 723528 192 0.0
723336 723528 192 0.0
lock-app BRD4161A .text 715176 715368 192 0.0
715176 715368 192 0.0
window-app BRD4161A .text 716076 716268 192 0.0
716076 716268 192 0.0
esp32 all-clusters-app c3devkit .flash.text 874742 875022 280 0.0
m5stack .flash.text 905807 906159 352 0.0
k32w lighting-app k32w061+se05x+release .text 613876 614036 160 0.0
613876 614036 160 0.0
lock-app k32w061+debug .text 515240 515400 160 0.0
515240 515400 160 0.0
shell k32w061+debug .text 359572 359668 96 0.0
359572 359668 96 0.0
linux all-clusters-app debug .text 1356946 1358770 1824 0.1
1356946 1358770 1824 0.1
bridge-app debug+rpc .text 1064293 1065957 1664 0.2
1064293 1065957 1664 0.2
chip-tool debug .text 3642741 3644517 1776 0.0
3642741 3644517 1776 0.0
lighting-app debug+rpc .text 1262178 1264018 1840 0.1
1262178 1264018 1840 0.1
ota-provider-app debug .text 1023714 1025554 1840 0.2
1023714 1025554 1840 0.2
ota-requestor-app debug .text 1145602 1147666 2064 0.2
1145602 1147666 2064 0.2
shell debug .text 599458 601586 2128 0.4
599458 601586 2128 0.4
tv-app debug .text 1454338 1456466 2128 0.1
1454338 1456466 2128 0.1
mbed all-clusters-app CY8CPROTO_062_4343W+release .text 1251648 1251776 128 0.0
1251648 1251776 128 0.0
lighting-app CY8CPROTO_062_4343W+release .text 1219352 1219480 128 0.0
1219352 1219480 128 0.0
lock-app CY8CPROTO_062_4343W+release .text 1197384 1197512 128 0.0
1197384 1197512 128 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 text 577204 577224 20 0.0
577204 577224 20 0.0
nrf52840dk_nrf52840+rpc text 550396 550416 20 0.0
550396 550416 20 0.0
nrf5340dk_nrf5340_cpuapp text 506676 506696 20 0.0
506676 506696 20 0.0
lock-app nrf52840dk_nrf52840 text 558764 558784 20 0.0
558764 558784 20 0.0
nrf5340dk_nrf5340_cpuapp text 488228 488248 20 0.0
488228 488248 20 0.0
pump-app nrf52840dk_nrf52840 text 561868 561888 20 0.0
561868 561888 20 0.0
pump-controller-app nrf52840dk_nrf52840 text 558508 558528 20 0.0
558508 558528 20 0.0
p6 lock-app default .text 1126192 1126528 336 0.0
1126192 1126528 336 0.0
qpg lighting-app qpg6100+debug .text 485144 485288 144 0.0
485144 485288 144 0.0
lock-app qpg6100+debug .text 461364 461508 144 0.0
461364 461508 144 0.0
persistent-storage-app qpg6100+debug .text 149900 149924 24 0.0
149900 149924 24 0.0
telink lighting-app tlsr9518adk80d text 457672 457714 42 0.0
457672 457714 42 0.0
Decreases (2 builds for nrfconnect)
platform target config section 596d838 a9b96b8 change % change
nrfconnect shell nrf52840dk_nrf52840 text 520324 520280 -44 -0.0
520324 520280 -44 -0.0
nrf5340dk_nrf5340_cpuapp text 440936 440892 -44 -0.0
440936 440892 -44 -0.0
Full report (36 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 596d838 a9b96b8 change % change
efr32 lighting-app BRD4161A .bss 113692 113692 0 0.0
.data 1752 1752 0 0.0
.text 735912 736104 192 0.0
735912 736104 192 0.0
BRD4161A+rpc .bss 130196 130196 0 0.0
.data 1852 1852 0 0.0
.text 723336 723528 192 0.0
723336 723528 192 0.0
lock-app BRD4161A .bss 111548 111548 0 0.0
.data 1712 1712 0 0.0
.text 715176 715368 192 0.0
715176 715368 192 0.0
window-app BRD4161A .bss 111860 111860 0 0.0
.data 1716 1716 0 0.0
.text 716076 716268 192 0.0
716076 716268 192 0.0
esp32 all-clusters-app c3devkit .dram0.bss 58232 58232 0 0.0
.dram0.data 16464 16464 0 0.0
.flash.rodata 198176 198176 0 0.0
.flash.text 874742 875022 280 0.0
.iram0.text 57564 57564 0 0.0
m5stack .dram0.bss 60744 60744 0 0.0
.dram0.data 32084 32084 0 0.0
.flash.rodata 206928 206928 0 0.0
.flash.text 905807 906159 352 0.0
.iram0.text 125115 125115 0 0.0
k32w lighting-app k32w061+se05x+release .bss 78720 78720 0 0.0
.data 1900 1900 0 0.0
.text 613876 614036 160 0.0
613876 614036 160 0.0
lock-app k32w061+debug .bss 69196 69196 0 0.0
.data 1864 1864 0 0.0
.text 515240 515400 160 0.0
515240 515400 160 0.0
shell k32w061+debug .bss 63256 63256 0 0.0
.data 672 672 0 0.0
.text 359572 359668 96 0.0
359572 359668 96 0.0
linux all-clusters-app debug .bss 50160 50160 0 0.0
.data 978 978 0 0.0
.data.rel.ro 60800 60800 0 0.0
.dynamic 592 592 0 0.0
.got 4088 4088 0 0.0
.init 27 27 0 0.0
.init_array 512 512 0 0.0
.rodata 134517 134517 0 0.0
.text 1356946 1358770 1824 0.1
1356946 1358770 1824 0.1
bridge-app debug+rpc .bss 51856 51856 0 0.0
.data 976 976 0 0.0
.data.rel.ro 27272 27272 0 0.0
.dynamic 592 592 0 0.0
.got 3952 3952 0 0.0
.init 27 27 0 0.0
.init_array 400 400 0 0.0
.rodata 109740 109740 0 0.0
.text 1064293 1065957 1664 0.2
1064293 1065957 1664 0.2
chip-tool debug .bss 17680 17680 0 0.0
.data 1584 1584 0 0.0
.data.rel.ro 94896 94896 0 0.0
.dynamic 592 592 0 0.0
.got 4368 4368 0 0.0
.init 27 27 0 0.0
.init_array 416 416 0 0.0
.rodata 208068 208068 0 0.0
.text 3642741 3644517 1776 0.0
3642741 3644517 1776 0.0
lighting-app debug+rpc .bss 41176 41176 0 0.0
.data 1106 1106 0 0.0
.data.rel.ro 53968 53968 0 0.0
.dynamic 608 608 0 0.0
.got 4112 4112 0 0.0
.init 27 27 0 0.0
.init_array 528 528 0 0.0
.rodata 126897 126897 0 0.0
.text 1262178 1264018 1840 0.1
1262178 1264018 1840 0.1
ota-provider-app debug .bss 37440 37440 0 0.0
.data 752 752 0 0.0
.data.rel.ro 24488 24488 0 0.0
.dynamic 592 592 0 0.0
.got 4016 4016 0 0.0
.init 27 27 0 0.0
.init_array 440 440 0 0.0
.rodata 110344 110344 0 0.0
.text 1023714 1025554 1840 0.2
1023714 1025554 1840 0.2
ota-requestor-app debug .bss 208320 208320 0 0.0
.data 752 752 0 0.0
.data.rel.ro 25928 25928 0 0.0
.dynamic 592 592 0 0.0
.got 4144 4144 0 0.0
.init 27 27 0 0.0
.init_array 520 520 0 0.0
.rodata 129000 129000 0 0.0
.text 1145602 1147666 2064 0.2
1145602 1147666 2064 0.2
shell debug .bss 16136 16136 0 0.0
.data 242 242 0 0.0
.data.rel.ro 36496 36496 0 0.0
.dynamic 592 592 0 0.0
.got 3528 3528 0 0.0
.init 27 27 0 0.0
.init_array 336 336 0 0.0
.rodata 76495 76495 0 0.0
.text 599458 601586 2128 0.4
599458 601586 2128 0.4
tv-app debug .bss 215568 215568 0 0.0
.data 2032 2032 0 0.0
.data.rel.ro 58192 58192 0 0.0
.dynamic 592 592 0 0.0
.got 4408 4408 0 0.0
.init 27 27 0 0.0
.init_array 608 608 0 0.0
.rodata 152072 152072 0 0.0
.text 1454338 1456466 2128 0.1
1454338 1456466 2128 0.1
mbed all-clusters-app CY8CPROTO_062_4343W+release .bss 179604 179604 0 0.0
.data 5192 5192 0 0.0
.heap 851648 851648 0 0.0
.text 1251648 1251776 128 0.0
1251648 1251776 128 0.0
lighting-app CY8CPROTO_062_4343W+release .bss 171060 171060 0 0.0
.data 5464 5464 0 0.0
.heap 859920 859920 0 0.0
.text 1219352 1219480 128 0.0
1219352 1219480 128 0.0
lock-app CY8CPROTO_062_4343W+release .bss 169988 169988 0 0.0
.data 5432 5432 0 0.0
.heap 861024 861024 0 0.0
.text 1197384 1197512 128 0.0
1197384 1197512 128 0.0
pigweed-app CY8CPROTO_062_4343W+release .bss 11760 11760 0 0.0
.data 4360 4360 0 0.0
.heap 1020328 1020328 0 0.0
.text 103064 103064 0 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 bss 112136 112136 0 0.0
rodata 97200 97200 0 0.0
text 577204 577224 20 0.0
577204 577224 20 0.0
nrf52840dk_nrf52840+rpc bss 108380 108380 0 0.0
rodata 87976 87976 0 0.0
text 550396 550416 20 0.0
550396 550416 20 0.0
nrf5340dk_nrf5340_cpuapp bss 113512 113512 0 0.0
rodata 92440 92440 0 0.0
text 506676 506696 20 0.0
506676 506696 20 0.0
lock-app nrf52840dk_nrf52840 bss 111208 111208 0 0.0
rodata 93600 93600 0 0.0
text 558764 558784 20 0.0
558764 558784 20 0.0
nrf5340dk_nrf5340_cpuapp bss 112584 112584 0 0.0
rodata 88860 88860 0 0.0
text 488228 488248 20 0.0
488228 488248 20 0.0
pigweed-app nrf52840dk_nrf52840 bss 51824 51824 0 0.0
rodata 45776 45776 0 0.0
text 339456 339456 0 0.0
pump-app nrf52840dk_nrf52840 bss 111308 111308 0 0.0
rodata 94800 94800 0 0.0
text 561868 561888 20 0.0
561868 561888 20 0.0
pump-controller-app nrf52840dk_nrf52840 bss 111208 111208 0 0.0
rodata 93576 93576 0 0.0
text 558508 558528 20 0.0
558508 558528 20 0.0
shell nrf52840dk_nrf52840 bss 109072 109072 0 0.0
rodata 72536 72536 0 0.0
text 520324 520280 -44 -0.0
520324 520280 -44 -0.0
nrf5340dk_nrf5340_cpuapp bss 110056 110056 0 0.0
rodata 67180 67180 0 0.0
text 440936 440892 -44 -0.0
440936 440892 -44 -0.0
p6 lock-app default .bss 67184 67184 0 0.0
.data 2416 2416 0 0.0
.heap 963744 963744 0 0.0
.text 1126192 1126528 336 0.0
1126192 1126528 336 0.0
qpg lighting-app qpg6100+debug .bss 52416 52416 0 0.0
.data 1000 1000 0 0.0
.text 485144 485288 144 0.0
485144 485288 144 0.0
lock-app qpg6100+debug .bss 51368 51368 0 0.0
.data 956 956 0 0.0
.text 461364 461508 144 0.0
461364 461508 144 0.0
persistent-storage-app qpg6100+debug .bss 27752 27752 0 0.0
.data 372 372 0 0.0
.text 149900 149924 24 0.0
149900 149924 24 0.0
telink lighting-app tlsr9518adk80d bss 69944 69944 0 0.0
noinit 33216 33216 0 0.0
text 457672 457714 42 0.0
457672 457714 42 0.0

@github-actions
Copy link

Size increase report for "gn_qpg-example-build" from 596d838

File Section File VM
chip-qpg6100-lighting-example.out .text 144 144
Full report output
BLOAT REPORT

Files found only in the build output:
    report.csv

Comparing ./master_artifact/chip-qpg6100-lighting-example.out.map and ./pull_artifact/chip-qpg6100-lighting-example.out.map:

BLOAT EXECUTION FAILED WITH CODE 1:
bloaty: unknown file type for file './pull_artifact/chip-qpg6100-lighting-example.out.map'

Comparing ./master_artifact/chip-qpg6100-lighting-example.out and ./pull_artifact/chip-qpg6100-lighting-example.out:

sections,vmsize,filesize
.debug_info,0,32179
.debug_loc,0,3391
.debug_line,0,1798
.debug_ranges,0,1360
.debug_str,0,761
.strtab,0,209
.debug_abbrev,0,151
.text,144,144
.symtab,0,64
.debug_frame,0,48
.debug_aranges,0,16
.shstrtab,0,-1
[Unmapped],0,-144


examples/chip-tool/commands/common/Command.cpp Outdated Show resolved Hide resolved
src/inet/InetInterface.h Show resolved Hide resolved
kpschoedel added a commit to kpschoedel/connectedhomeip that referenced this pull request Oct 26, 2021
#### Problem

It's hard to pick out actual size changes, beyond those called out in
the large-increase tables.

Report information can be distributed across multiple collapsed tables,
since the generator often runs before all builds are complete.

#### Change overview

Read back any existing comment and merge in new reports.

Comments now contain:

1. An open table highlighting large increases, if any.
2. A collapsed table of all increases, if any.
3. A collapsed table of all decreases, if any.
4. A collapsed table of all data.

#### Testing

Tested with manual runs:
project-chip#10979 (comment)
woody-apple pushed a commit that referenced this pull request Oct 26, 2021
#### Problem

It's hard to pick out actual size changes, beyond those called out in
the large-increase tables.

Report information can be distributed across multiple collapsed tables,
since the generator often runs before all builds are complete.

#### Change overview

Read back any existing comment and merge in new reports.

Comments now contain:

1. An open table highlighting large increases, if any.
2. A collapsed table of all increases, if any.
3. A collapsed table of all decreases, if any.
4. A collapsed table of all data.

#### Testing

Tested with manual runs:
#10979 (comment)
@github-actions
Copy link

Size increase report for "nrfconnect-example-build" from 596d838

File Section File VM
chip-lock.elf text 112 112
chip-shell.elf device_handles -4 -4
chip-shell.elf text -44 -44
Full report output
BLOAT REPORT

Files found only in the build output:
    report.csv

Comparing ./master_artifact/chip-lock.elf and ./pull_artifact/chip-lock.elf:

sections,vmsize,filesize
.debug_info,0,37231
.debug_loc,0,3463
.debug_ranges,0,1992
.debug_str,0,1317
.strtab,0,430
.debug_abbrev,0,314
.symtab,0,112
text,112,112
.debug_frame,0,32
.debug_aranges,0,24
.shstrtab,0,2
.debug_line,0,-349

Comparing ./master_artifact/chip-shell.elf and ./pull_artifact/chip-shell.elf:

sections,vmsize,filesize
.debug_info,0,20381
.debug_loc,0,2561
.debug_ranges,0,2328
.debug_str,0,1003
.debug_line,0,562
.debug_abbrev,0,321
.strtab,0,84
.symtab,0,16
.debug_frame,0,-4
device_handles,-4,-4
text,-44,-44


@github-actions
Copy link

Size increase report for "esp32-example-build" from 596d838

File Section File VM
chip-all-clusters-app.elf .flash.text 372 372
Full report output
BLOAT REPORT

Files found only in the build output:
    report.csv

Comparing ./master_artifact/chip-all-clusters-app.elf and ./pull_artifact/chip-all-clusters-app.elf:

sections,vmsize,filesize
.debug_info,0,25674
.debug_loc,0,3045
.debug_ranges,0,1416
.debug_str,0,1193
.debug_abbrev,0,873
.strtab,0,689
.flash.text,372,372
.debug_frame,0,124
.symtab,0,80
.debug_aranges,0,32
.shstrtab,0,-1
.riscv.attributes,0,-2
[Unmapped],0,-372
.debug_line,0,-1731


@github-actions
Copy link

PR #10979: Size comparison from 596d838 to 2a45313

36 builds (for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 596d838 2a45313 change % change
efr32 lighting-app BRD4161A .bss 113692 113692 0 0.0
.data 1752 1752 0 0.0
.text 735912 736200 288 0.0
lock-app BRD4161A .bss 111548 111548 0 0.0
.data 1712 1712 0 0.0
.text 715176 715464 288 0.0
window-app BRD4161A .bss 111860 111860 0 0.0
.data 1716 1716 0 0.0
.text 716076 716364 288 0.0
lighting-app BRD4161A+rpc .bss 130196 130196 0 0.0
.data 1852 1852 0 0.0
.text 723336 723624 288 0.0
esp32 all-clusters-app c3devkit .dram0.bss 58232 58232 0 0.0
.dram0.data 16464 16464 0 0.0
.flash.rodata 198176 198176 0 0.0
.flash.text 874742 875114 372 0.0
.iram0.text 57564 57564 0 0.0
m5stack .dram0.bss 60744 60744 0 0.0
.dram0.data 32084 32084 0 0.0
.flash.rodata 206928 206928 0 0.0
.flash.text 905807 906259 452 0.0
.iram0.text 125115 125115 0 0.0
k32w lock-app k32w061+debug .bss 69196 69196 0 0.0
.data 1864 1864 0 0.0
.text 515240 515480 240 0.0
shell k32w061+debug .bss 63256 63256 0 0.0
.data 672 672 0 0.0
.text 359572 359668 96 0.0
lighting-app k32w061+se05x+release .bss 78720 78720 0 0.0
.data 1900 1900 0 0.0
.text 613876 614116 240 0.0
linux all-clusters-app debug .bss 50160 50160 0 0.0
.data 978 978 0 0.0
.data.rel.ro 60800 60800 0 0.0
.dynamic 592 592 0 0.0
.got 4088 4088 0 0.0
.init 27 27 0 0.0
.init_array 512 512 0 0.0
.rodata 134517 134517 0 0.0
.text 1356946 1359682 2736 0.2
chip-tool debug .bss 17680 17680 0 0.0
.data 1584 1584 0 0.0
.data.rel.ro 94896 94560 -336 -0.4
.dynamic 592 592 0 0.0
.got 4368 4368 0 0.0
.init 27 27 0 0.0
.init_array 416 416 0 0.0
.rodata 208068 207860 -208 -0.1
.text 3642741 3651621 8880 0.2
ota-provider-app debug .bss 37440 37440 0 0.0
.data 752 752 0 0.0
.data.rel.ro 24488 24488 0 0.0
.dynamic 592 592 0 0.0
.got 4016 4016 0 0.0
.init 27 27 0 0.0
.init_array 440 440 0 0.0
.rodata 110344 110344 0 0.0
.text 1023714 1026466 2752 0.3
ota-requestor-app debug .bss 208320 208320 0 0.0
.data 752 752 0 0.0
.data.rel.ro 25928 25928 0 0.0
.dynamic 592 592 0 0.0
.got 4144 4144 0 0.0
.init 27 27 0 0.0
.init_array 520 520 0 0.0
.rodata 129000 128840 -160 -0.1
.text 1145602 1148642 3040 0.3
shell debug .bss 16136 16136 0 0.0
.data 242 242 0 0.0
.data.rel.ro 36496 36496 0 0.0
.dynamic 592 592 0 0.0
.got 3528 3528 0 0.0
.init 27 27 0 0.0
.init_array 336 336 0 0.0
.rodata 76495 76495 0 0.0
.text 599458 601890 2432 0.4
tv-app debug .bss 215568 215568 0 0.0
.data 2032 2032 0 0.0
.data.rel.ro 58192 58192 0 0.0
.dynamic 592 592 0 0.0
.got 4408 4408 0 0.0
.init 27 27 0 0.0
.init_array 608 608 0 0.0
.rodata 152072 151896 -176 -0.1
.text 1454338 1457442 3104 0.2
bridge-app debug+rpc .bss 51856 51856 0 0.0
.data 976 976 0 0.0
.data.rel.ro 27272 27272 0 0.0
.dynamic 592 592 0 0.0
.got 3952 3952 0 0.0
.init 27 27 0 0.0
.init_array 400 400 0 0.0
.rodata 109740 109740 0 0.0
.text 1064293 1066821 2528 0.2
lighting-app debug+rpc .bss 41176 41176 0 0.0
.data 1106 1106 0 0.0
.data.rel.ro 53968 53968 0 0.0
.dynamic 608 608 0 0.0
.got 4112 4112 0 0.0
.init 27 27 0 0.0
.init_array 528 528 0 0.0
.rodata 126897 126897 0 0.0
.text 1262178 1264930 2752 0.2
mbed all-clusters-app CY8CPROTO_062_4343W+release .bss 179604 179604 0 0.0
.data 5192 5192 0 0.0
.heap 851648 851648 0 0.0
.text 1251648 1251904 256 0.0
lighting-app CY8CPROTO_062_4343W+release .bss 171060 171060 0 0.0
.data 5464 5464 0 0.0
.heap 859920 859920 0 0.0
.text 1219352 1219608 256 0.0
lock-app CY8CPROTO_062_4343W+release .bss 169988 169988 0 0.0
.data 5432 5432 0 0.0
.heap 861024 861024 0 0.0
.text 1197384 1197640 256 0.0
pigweed-app CY8CPROTO_062_4343W+release .bss 11760 11760 0 0.0
.data 4360 4360 0 0.0
.heap 1020328 1020328 0 0.0
.text 103064 103064 0 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 bss 112136 112136 0 0.0
rodata 97200 97200 0 0.0
text 577204 577316 112 0.0
lock-app nrf52840dk_nrf52840 bss 111208 111208 0 0.0
rodata 93600 93600 0 0.0
text 558764 558876 112 0.0
pigweed-app nrf52840dk_nrf52840 bss 51824 51824 0 0.0
rodata 45776 45776 0 0.0
text 339456 339456 0 0.0
pump-app nrf52840dk_nrf52840 bss 111308 111308 0 0.0
rodata 94800 94800 0 0.0
text 561868 561980 112 0.0
pump-controller-app nrf52840dk_nrf52840 bss 111208 111208 0 0.0
rodata 93576 93576 0 0.0
text 558508 558620 112 0.0
shell nrf52840dk_nrf52840 bss 109072 109072 0 0.0
rodata 72536 72536 0 0.0
text 520324 520280 -44 -0.0
lighting-app nrf52840dk_nrf52840+rpc bss 108380 108380 0 0.0
rodata 87976 87976 0 0.0
text 550396 550508 112 0.0
nrf5340dk_nrf5340_cpuapp bss 113512 113512 0 0.0
rodata 92440 92440 0 0.0
text 506676 506788 112 0.0
lock-app nrf5340dk_nrf5340_cpuapp bss 112584 112584 0 0.0
rodata 88860 88860 0 0.0
text 488228 488340 112 0.0
shell nrf5340dk_nrf5340_cpuapp bss 110056 110056 0 0.0
rodata 67180 67180 0 0.0
text 440936 440892 -44 -0.0
p6 lock-app default .bss 67184 67184 0 0.0
.data 2416 2416 0 0.0
.heap 963744 963744 0 0.0
.text 1126192 1126624 432 0.0
qpg lighting-app qpg6100+debug .bss 52416 52416 0 0.0
.data 1000 1000 0 0.0
.text 485144 485384 240 0.0
lock-app qpg6100+debug .bss 51368 51368 0 0.0
.data 956 956 0 0.0
.text 461364 461604 240 0.1
persistent-storage-app qpg6100+debug .bss 27752 27752 0 0.0
.data 372 372 0 0.0
.text 149900 149924 24 0.0
telink lighting-app tlsr9518adk80d bss 69944 69944 0 0.0
noinit 33216 33216 0 0.0
text 457672 457814 142 0.0

@github-actions
Copy link

github-actions bot commented Oct 26, 2021

PR #10979: Size comparison from 596d838 to dc615cd

Increases (32 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 596d838 dc615cd change % change
efr32 lighting-app BRD4161A .text 735912 736696 784 0.1
BRD4161A+rpc .text 723336 724120 784 0.1
lock-app BRD4161A .text 715176 715960 784 0.1
window-app BRD4161A .text 716076 716860 784 0.1
esp32 all-clusters-app c3devkit .flash.text 874742 875274 532 0.1
m5stack .flash.text 905807 906471 664 0.1
k32w lighting-app k32w061+se05x+release .text 613876 614340 464 0.1
lock-app k32w061+debug .text 515240 515704 464 0.1
shell k32w061+debug .text 359572 359668 96 0.0
linux all-clusters-app debug .rodata 134517 134613 96 0.1
.text 1356946 1360930 3984 0.3
bridge-app debug+rpc .rodata 109740 109836 96 0.1
.text 1064293 1068245 3952 0.4
chip-tool debug .text 3642741 3653301 10560 0.3
lighting-app debug+rpc .rodata 126897 126993 96 0.1
.text 1262178 1266338 4160 0.3
ota-provider-app debug .rodata 110344 110440 96 0.1
.text 1023714 1027874 4160 0.4
ota-requestor-app debug .text 1145602 1150066 4464 0.4
shell debug .text 599458 601922 2464 0.4
tv-app debug .text 1454338 1458690 4352 0.3
mbed all-clusters-app CY8CPROTO_062_4343W+release .text 1251648 1252096 448 0.0
lighting-app CY8CPROTO_062_4343W+release .text 1219352 1219800 448 0.0
lock-app CY8CPROTO_062_4343W+release .text 1197384 1197832 448 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 text 577204 577532 328 0.1
nrf52840dk_nrf52840+rpc text 550396 550724 328 0.1
nrf5340dk_nrf5340_cpuapp text 506676 507004 328 0.1
lock-app nrf52840dk_nrf52840 text 558764 559092 328 0.1
nrf5340dk_nrf5340_cpuapp text 488228 488556 328 0.1
pump-app nrf52840dk_nrf52840 text 561868 562196 328 0.1
pump-controller-app nrf52840dk_nrf52840 text 558508 558836 328 0.1
p6 lock-app default .text 1126192 1127104 912 0.1
qpg lighting-app qpg6100+debug .text 485144 485584 440 0.1
lock-app qpg6100+debug .text 461364 461804 440 0.1
persistent-storage-app qpg6100+debug .text 149900 149924 24 0.0
telink lighting-app tlsr9518adk80d text 457672 458018 346 0.1
Decreases (5 builds for linux, nrfconnect)
platform target config section 596d838 dc615cd change % change
linux chip-tool debug .data.rel.ro 94896 94640 -256 -0.3
.rodata 208068 207988 -80 -0.0
ota-requestor-app debug .rodata 129000 128936 -64 -0.0
tv-app debug .rodata 152072 151992 -80 -0.1
nrfconnect shell nrf52840dk_nrf52840 text 520324 520280 -44 -0.0
nrf5340dk_nrf5340_cpuapp text 440936 440892 -44 -0.0
Full report (36 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 596d838 dc615cd change % change
efr32 lighting-app BRD4161A .bss 113692 113692 0 0.0
.data 1752 1752 0 0.0
.text 735912 736696 784 0.1
BRD4161A+rpc .bss 130196 130196 0 0.0
.data 1852 1852 0 0.0
.text 723336 724120 784 0.1
lock-app BRD4161A .bss 111548 111548 0 0.0
.data 1712 1712 0 0.0
.text 715176 715960 784 0.1
window-app BRD4161A .bss 111860 111860 0 0.0
.data 1716 1716 0 0.0
.text 716076 716860 784 0.1
esp32 all-clusters-app c3devkit .dram0.bss 58232 58232 0 0.0
.dram0.data 16464 16464 0 0.0
.flash.rodata 198176 198176 0 0.0
.flash.text 874742 875274 532 0.1
.iram0.text 57564 57564 0 0.0
m5stack .dram0.bss 60744 60744 0 0.0
.dram0.data 32084 32084 0 0.0
.flash.rodata 206928 206928 0 0.0
.flash.text 905807 906471 664 0.1
.iram0.text 125115 125115 0 0.0
k32w lighting-app k32w061+se05x+release .bss 78720 78720 0 0.0
.data 1900 1900 0 0.0
.text 613876 614340 464 0.1
lock-app k32w061+debug .bss 69196 69196 0 0.0
.data 1864 1864 0 0.0
.text 515240 515704 464 0.1
shell k32w061+debug .bss 63256 63256 0 0.0
.data 672 672 0 0.0
.text 359572 359668 96 0.0
linux all-clusters-app debug .bss 50160 50160 0 0.0
.data 978 978 0 0.0
.data.rel.ro 60800 60800 0 0.0
.dynamic 592 592 0 0.0
.got 4088 4088 0 0.0
.init 27 27 0 0.0
.init_array 512 512 0 0.0
.rodata 134517 134613 96 0.1
.text 1356946 1360930 3984 0.3
bridge-app debug+rpc .bss 51856 51856 0 0.0
.data 976 976 0 0.0
.data.rel.ro 27272 27272 0 0.0
.dynamic 592 592 0 0.0
.got 3952 3952 0 0.0
.init 27 27 0 0.0
.init_array 400 400 0 0.0
.rodata 109740 109836 96 0.1
.text 1064293 1068245 3952 0.4
chip-tool debug .bss 17680 17680 0 0.0
.data 1584 1584 0 0.0
.data.rel.ro 94896 94640 -256 -0.3
.dynamic 592 592 0 0.0
.got 4368 4368 0 0.0
.init 27 27 0 0.0
.init_array 416 416 0 0.0
.rodata 208068 207988 -80 -0.0
.text 3642741 3653301 10560 0.3
lighting-app debug+rpc .bss 41176 41176 0 0.0
.data 1106 1106 0 0.0
.data.rel.ro 53968 53968 0 0.0
.dynamic 608 608 0 0.0
.got 4112 4112 0 0.0
.init 27 27 0 0.0
.init_array 528 528 0 0.0
.rodata 126897 126993 96 0.1
.text 1262178 1266338 4160 0.3
ota-provider-app debug .bss 37440 37440 0 0.0
.data 752 752 0 0.0
.data.rel.ro 24488 24488 0 0.0
.dynamic 592 592 0 0.0
.got 4016 4016 0 0.0
.init 27 27 0 0.0
.init_array 440 440 0 0.0
.rodata 110344 110440 96 0.1
.text 1023714 1027874 4160 0.4
ota-requestor-app debug .bss 208320 208320 0 0.0
.data 752 752 0 0.0
.data.rel.ro 25928 25928 0 0.0
.dynamic 592 592 0 0.0
.got 4144 4144 0 0.0
.init 27 27 0 0.0
.init_array 520 520 0 0.0
.rodata 129000 128936 -64 -0.0
.text 1145602 1150066 4464 0.4
shell debug .bss 16136 16136 0 0.0
.data 242 242 0 0.0
.data.rel.ro 36496 36496 0 0.0
.dynamic 592 592 0 0.0
.got 3528 3528 0 0.0
.init 27 27 0 0.0
.init_array 336 336 0 0.0
.rodata 76495 76495 0 0.0
.text 599458 601922 2464 0.4
tv-app debug .bss 215568 215568 0 0.0
.data 2032 2032 0 0.0
.data.rel.ro 58192 58192 0 0.0
.dynamic 592 592 0 0.0
.got 4408 4408 0 0.0
.init 27 27 0 0.0
.init_array 608 608 0 0.0
.rodata 152072 151992 -80 -0.1
.text 1454338 1458690 4352 0.3
mbed all-clusters-app CY8CPROTO_062_4343W+release .bss 179604 179604 0 0.0
.data 5192 5192 0 0.0
.heap 851648 851648 0 0.0
.text 1251648 1252096 448 0.0
lighting-app CY8CPROTO_062_4343W+release .bss 171060 171060 0 0.0
.data 5464 5464 0 0.0
.heap 859920 859920 0 0.0
.text 1219352 1219800 448 0.0
lock-app CY8CPROTO_062_4343W+release .bss 169988 169988 0 0.0
.data 5432 5432 0 0.0
.heap 861024 861024 0 0.0
.text 1197384 1197832 448 0.0
pigweed-app CY8CPROTO_062_4343W+release .bss 11760 11760 0 0.0
.data 4360 4360 0 0.0
.heap 1020328 1020328 0 0.0
.text 103064 103064 0 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 bss 112136 112136 0 0.0
rodata 97200 97200 0 0.0
text 577204 577532 328 0.1
nrf52840dk_nrf52840+rpc bss 108380 108380 0 0.0
rodata 87976 87976 0 0.0
text 550396 550724 328 0.1
nrf5340dk_nrf5340_cpuapp bss 113512 113512 0 0.0
rodata 92440 92440 0 0.0
text 506676 507004 328 0.1
lock-app nrf52840dk_nrf52840 bss 111208 111208 0 0.0
rodata 93600 93600 0 0.0
text 558764 559092 328 0.1
nrf5340dk_nrf5340_cpuapp bss 112584 112584 0 0.0
rodata 88860 88860 0 0.0
text 488228 488556 328 0.1
pigweed-app nrf52840dk_nrf52840 bss 51824 51824 0 0.0
rodata 45776 45776 0 0.0
text 339456 339456 0 0.0
pump-app nrf52840dk_nrf52840 bss 111308 111308 0 0.0
rodata 94800 94800 0 0.0
text 561868 562196 328 0.1
pump-controller-app nrf52840dk_nrf52840 bss 111208 111208 0 0.0
rodata 93576 93576 0 0.0
text 558508 558836 328 0.1
shell nrf52840dk_nrf52840 bss 109072 109072 0 0.0
rodata 72536 72536 0 0.0
text 520324 520280 -44 -0.0
nrf5340dk_nrf5340_cpuapp bss 110056 110056 0 0.0
rodata 67180 67180 0 0.0
text 440936 440892 -44 -0.0
p6 lock-app default .bss 67184 67184 0 0.0
.data 2416 2416 0 0.0
.heap 963744 963744 0 0.0
.text 1126192 1127104 912 0.1
qpg lighting-app qpg6100+debug .bss 52416 52416 0 0.0
.data 1000 1000 0 0.0
.text 485144 485584 440 0.1
lock-app qpg6100+debug .bss 51368 51368 0 0.0
.data 956 956 0 0.0
.text 461364 461804 440 0.1
persistent-storage-app qpg6100+debug .bss 27752 27752 0 0.0
.data 372 372 0 0.0
.text 149900 149924 24 0.0
telink lighting-app tlsr9518adk80d bss 69944 69944 0 0.0
noinit 33216 33216 0 0.0
text 457672 458018 346 0.1

@andy31415
Copy link
Contributor

fast track: refactor without functionality change. A large amount of changes were within unit tests and CI test coverage should be quite extensive for this.

@andy31415 andy31415 merged commit 014d85c into project-chip:master Oct 27, 2021
@kpschoedel kpschoedel deleted the x7715-inet-intf-2 branch October 27, 2021 13:52
andy31415 added a commit to andy31415/connectedhomeip that referenced this pull request Oct 27, 2021
JasonLiuZhuoCheng pushed a commit to JasonLiuZhuoCheng/connectedhomeip that referenced this pull request Oct 28, 2021
#### Problem

It's hard to pick out actual size changes, beyond those called out in
the large-increase tables.

Report information can be distributed across multiple collapsed tables,
since the generator often runs before all builds are complete.

#### Change overview

Read back any existing comment and merge in new reports.

Comments now contain:

1. An open table highlighting large increases, if any.
2. A collapsed table of all increases, if any.
3. A collapsed table of all decreases, if any.
4. A collapsed table of all data.

#### Testing

Tested with manual runs:
project-chip#10979 (comment)
JasonLiuZhuoCheng pushed a commit to JasonLiuZhuoCheng/connectedhomeip that referenced this pull request Oct 28, 2021
* Convert Inet::InterfaceId to a class

#### Problem

The current `#if`+`typedef` requires the actual definition to be visible
at every appearance, rather than merely an opaque forward class declaration,
which is an obstace to project-chip#7715 _Virtualize System and Inet interfaces_.

#### Change overview

Convert `InterfaceId` to a class. Some free functions become class methods,
and `INET_NULL_INTERFACEID` is replaced by a default-constructed
`InterfaceId`.

#### Testing

CI; no changes to functionality intended.

* add InterfaceId::Null()

* replace strcpy()
JasonLiuZhuoCheng pushed a commit to JasonLiuZhuoCheng/connectedhomeip that referenced this pull request Oct 28, 2021
carol-apple pushed a commit to carol-apple/connectedhomeip that referenced this pull request Oct 28, 2021
* Convert Inet::InterfaceId to a class

#### Problem

The current `#if`+`typedef` requires the actual definition to be visible
at every appearance, rather than merely an opaque forward class declaration,
which is an obstace to project-chip#7715 _Virtualize System and Inet interfaces_.

#### Change overview

Convert `InterfaceId` to a class. Some free functions become class methods,
and `INET_NULL_INTERFACEID` is replaced by a default-constructed
`InterfaceId`.

#### Testing

CI; no changes to functionality intended.

* add InterfaceId::Null()

* replace strcpy()
carol-apple pushed a commit to carol-apple/connectedhomeip that referenced this pull request Oct 28, 2021
PSONALl pushed a commit to PSONALl/connectedhomeip that referenced this pull request Dec 3, 2021
* Convert Inet::InterfaceId to a class

#### Problem

The current `#if`+`typedef` requires the actual definition to be visible
at every appearance, rather than merely an opaque forward class declaration,
which is an obstace to project-chip#7715 _Virtualize System and Inet interfaces_.

#### Change overview

Convert `InterfaceId` to a class. Some free functions become class methods,
and `INET_NULL_INTERFACEID` is replaced by a default-constructed
`InterfaceId`.

#### Testing

CI; no changes to functionality intended.

* add InterfaceId::Null()

* replace strcpy()
PSONALl pushed a commit to PSONALl/connectedhomeip that referenced this pull request Dec 3, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants