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

Minimize API surface that is templated for CommandHandler #33620

Merged

Conversation

andy31415
Copy link
Contributor

@andy31415 andy31415 commented May 27, 2024

This is in preparation to simplify CommandHandler usage in the CommandHandlerInterface: even though command handler has 50+ methods and 20+ data members, the external interface seems to be limited to 6 calls: addstatus/response/responsedata and some getters (fabricindex and subjectedescriptor) and an early flush call:

❯ rg '\.mCommandHandler\.\w*' -oIN | sort | uniq -c | sort -n
      1 .mCommandHandler.GetSubjectDescriptor
      2 .mCommandHandler.FlushAcksRightAwayOnSlowCommand
     32 .mCommandHandler.GetAccessingFabricIndex
     38 .mCommandHandler.AddResponse
     97 .mCommandHandler.AddStatus

As a result, it seems highly desirable to have some AddRespose implementation that is non-templated and this also addresses a subset #31627 (and may save some flash as a result as the surface that is templated may become smaller even if that is not a primary goal of this PR).

Copy link

github-actions bot commented May 27, 2024

PR #33620: Size comparison from 6b83689 to a32fb0c

Increases above 0.2%:

platform target config section 6b83689 a32fb0c change % change
bl702 lighting-app bl702 .rodata 109220 109580 360 0.3
bl702+mfd .rodata 108160 108520 360 0.3
bl702+rpc .rodata 124592 124952 360 0.3
bl706-eth .rodata 102276 102596 320 0.3
bl706-wifi .rodata 123356 123716 360 0.3
bl702l lighting-app bl702l .rodata 103224 103584 360 0.3
bl702l+mfd .rodata 102164 102524 360 0.4
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 .rodata 85396 85876 480 0.6
lock-ftd LP_EM_CC1354P10_6 .rodata 78968 79352 384 0.5
lock-mtd LP_EM_CC1354P10_6 .rodata 106292 106676 384 0.4
pump-app LP_EM_CC1354P10_6 .rodata 81044 81284 240 0.3
pump-controller-app LP_EM_CC1354P10_6 .rodata 76828 77068 240 0.3
cc32xx air-purifier CC3235SF_LAUNCHXL .rodata 89958 90198 240 0.3
lock CC3235SF_LAUNCHXL .rodata 110718 111078 360 0.3
esp32 all-clusters-app c3devkit .flash.rodata 253960 254768 808 0.3
m5stack .flash.rodata 285704 286512 808 0.3
linux air-purifier-app debug (read/write) 132792 133336 544 0.4
.data.rel.ro 76584 77144 560 0.7
all-clusters-app debug (read/write) 484304 485968 1664 0.3
.data.rel.ro 336104 337752 1648 0.5
all-clusters-minimal-app debug (read/write) 240256 241728 1472 0.6
.data.rel.ro 99640 101112 1472 1.5
bridge-app debug (read/write) 221168 221744 576 0.3
.data.rel.ro 88608 89168 560 0.6
fabric-bridge-app debug (read/write) 213208 213752 544 0.3
.data.rel.ro 86336 86896 560 0.6
lighting-app debug+rpc+ui (read/write) 229968 230960 992 0.4
.data.rel.ro 97024 98016 992 1.0
lock-app debug (read/write) 208328 209128 800 0.4
.data.rel.ro 82616 83416 800 1.0
ota-provider-app debug (read/write) 196896 197504 608 0.3
.data.rel.ro 71856 72464 608 0.8
ota-requestor-app debug (read/write) 201264 201936 672 0.3
.data.rel.ro 74960 75632 672 0.9
shell debug (read/write) 156888 158328 1440 0.9
.data.rel.ro 88832 90272 1440 1.6
thermostat-no-ble arm64 (read/write) 246984 250536 3552 1.4
.data.rel.ro 106048 106768 720 0.7
.got 9000 9144 144 1.6
tv-app debug (read/write) 349120 350016 896 0.3
.data.rel.ro 96600 97480 880 0.9
tv-casting-app debug .data.rel.ro 176480 177200 720 0.4
nrfconnect all-clusters-app nrf52840dk_nrf52840 rodata 102028 102788 760 0.7
nrf7002dk_nrf5340_cpuapp rodata 151464 152224 760 0.5
all-clusters-minimal-app nrf52840dk_nrf52840 rodata 89284 90004 720 0.8
stm32 light STM32WB5MM-DK .rodata 81564 82044 480 0.6
Increases (37 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, esp32, linux, nrfconnect, stm32)
platform target config section 6b83689 a32fb0c change % change
bl602 lighting-app bl602 .rodata 159668 160028 360 0.2
bl602+mfd .rodata 158628 158988 360 0.2
bl602+rpc .rodata 167244 167604 360 0.2
bl702 lighting-app bl702 .rodata 109220 109580 360 0.3
bl702+mfd .rodata 108160 108520 360 0.3
bl702+rpc .rodata 124592 124952 360 0.3
bl706-eth .rodata 102276 102596 320 0.3
bl706-wifi .rodata 123356 123716 360 0.3
bl702l lighting-app bl702l .rodata 103224 103584 360 0.3
bl702l+mfd .rodata 102164 102524 360 0.4
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 .rodata 85396 85876 480 0.6
lock-ftd LP_EM_CC1354P10_6 .rodata 78968 79352 384 0.5
lock-mtd LP_EM_CC1354P10_6 .rodata 106292 106676 384 0.4
pump-app LP_EM_CC1354P10_6 .rodata 81044 81284 240 0.3
pump-controller-app LP_EM_CC1354P10_6 .rodata 76828 77068 240 0.3
cc32xx air-purifier CC3235SF_LAUNCHXL .rodata 89958 90198 240 0.3
lock CC3235SF_LAUNCHXL .rodata 110718 111078 360 0.3
esp32 all-clusters-app c3devkit (read/write) 1751896 1752704 808 0.0
.flash.rodata 253960 254768 808 0.3
m5stack (read/write) 536500 537308 808 0.2
.flash.rodata 285704 286512 808 0.3
linux air-purifier-app debug (read/write) 132792 133336 544 0.4
.data.rel.ro 76584 77144 560 0.7
all-clusters-app debug (read/write) 484304 485968 1664 0.3
.data.rel.ro 336104 337752 1648 0.5
all-clusters-minimal-app debug (read/write) 240256 241728 1472 0.6
.data.rel.ro 99640 101112 1472 1.5
bridge-app debug (read/write) 221168 221744 576 0.3
.data.rel.ro 88608 89168 560 0.6
fabric-admin debug (read only) 11924161 11924177 16 0.0
.text 10796819 10796835 16 0.0
fabric-bridge-app debug (read/write) 213208 213752 544 0.3
.data.rel.ro 86336 86896 560 0.6
lighting-app debug+rpc+ui (read/write) 229968 230960 992 0.4
.data.rel.ro 97024 98016 992 1.0
lock-app debug (read/write) 208328 209128 800 0.4
.data.rel.ro 82616 83416 800 1.0
ota-provider-app debug (read/write) 196896 197504 608 0.3
.data.rel.ro 71856 72464 608 0.8
ota-requestor-app debug (read/write) 201264 201936 672 0.3
.data.rel.ro 74960 75632 672 0.9
shell debug (read/write) 156888 158328 1440 0.9
.data.rel.ro 88832 90272 1440 1.6
thermostat-no-ble arm64 (read/write) 246984 250536 3552 1.4
.data.rel.ro 106048 106768 720 0.7
.got 9000 9144 144 1.6
tv-app debug (read/write) 349120 350016 896 0.3
.data.rel.ro 96600 97480 880 0.9
tv-casting-app debug (read/write) 343216 343952 736 0.2
.data.rel.ro 176480 177200 720 0.4
nrfconnect all-clusters-app nrf52840dk_nrf52840 rodata 102028 102788 760 0.7
nrf7002dk_nrf5340_cpuapp rodata 151464 152224 760 0.5
all-clusters-minimal-app nrf52840dk_nrf52840 rodata 89284 90004 720 0.8
stm32 light STM32WB5MM-DK .rodata 81564 82044 480 0.6
Decreases (79 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink)
platform target config section 6b83689 a32fb0c change % change
bl602 lighting-app bl602 (read/write) 1446842 1444642 -2200 -0.2
.text 1111112 1108552 -2560 -0.2
bl602+mfd (read/write) 1461282 1459082 -2200 -0.2
.text 1126430 1123870 -2560 -0.2
bl602+rpc (read/write) 1494514 1492058 -2456 -0.2
.text 1142758 1139942 -2816 -0.2
bl702 lighting-app bl702 (read/write) 1212699 1210499 -2200 -0.2
.text 981516 978956 -2560 -0.3
bl702+mfd (read/write) 1223787 1221587 -2200 -0.2
.text 993526 990966 -2560 -0.3
bl702+rpc (read/write) 1304163 1301963 -2200 -0.2
.text 1056224 1053664 -2560 -0.2
bl706-eth (read/write) 1029829 1027845 -1984 -0.2
.text 772064 769760 -2304 -0.3
bl706-wifi (read/write) 1263958 1261758 -2200 -0.2
.text 1003326 1000766 -2560 -0.3
bl702l lighting-app bl702l (read/write) 1182292 1180092 -2200 -0.2
.text 974646 972086 -2560 -0.3
bl702l+mfd (read/write) 1194208 1191496 -2712 -0.2
.text 986968 984408 -2560 -0.3
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 (read only) 799252 797348 -1904 -0.2
.text 713592 711208 -2384 -0.3
lock-ftd LP_EM_CC1354P10_6 (read only) 814472 813048 -1424 -0.2
.text 735240 733432 -1808 -0.2
lock-mtd LP_EM_CC1354P10_6 (read only) 803820 802396 -1424 -0.2
.text 697264 695456 -1808 -0.3
pump-app LP_EM_CC1354P10_6 (read only) 756124 755308 -816 -0.1
.text 674816 673760 -1056 -0.2
pump-controller-app LP_EM_CC1354P10_6 (read only) 741796 740980 -816 -0.1
.text 664704 663648 -1056 -0.2
cc32xx air-purifier CC3235SF_LAUNCHXL (read only) 607342 606462 -880 -0.1
.text 515264 514144 -1120 -0.2
lock CC3235SF_LAUNCHXL (read only) 653238 651742 -1496 -0.2
.text 540396 538540 -1856 -0.3
cyw30739 light CYW30739B2-P5-EVK-01 (read/write) 742427 740507 -1920 -0.3
.app_xip_area 662373 660453 -1920 -0.3
CYW30739B2-P5-EVK-02 (read/write) 764903 762983 -1920 -0.3
.app_xip_area 682217 680297 -1920 -0.3
CYW30739B2-P5-EVK-03 (read/write) 764903 762983 -1920 -0.3
.app_xip_area 682217 680297 -1920 -0.3
CYW930739M2EVB-02 (read/write) 714283 712363 -1920 -0.3
.app_xip_area 639161 637241 -1920 -0.3
light-switch CYW30739B2-P5-EVK-01 (read/write) 679955 678699 -1256 -0.2
.app_xip_area 604197 602941 -1256 -0.2
CYW30739B2-P5-EVK-02 (read/write) 702151 700895 -1256 -0.2
.app_xip_area 623841 622585 -1256 -0.2
CYW30739B2-P5-EVK-03 (read/write) 702151 700895 -1256 -0.2
.app_xip_area 623841 622585 -1256 -0.2
lock CYW30739B2-P5-EVK-01 (read/write) 698475 697051 -1424 -0.2
.app_xip_area 619701 618277 -1424 -0.2
CYW30739B2-P5-EVK-02 (read/write) 720743 719319 -1424 -0.2
.app_xip_area 639417 637993 -1424 -0.2
CYW30739B2-P5-EVK-03 (read/write) 720743 719319 -1424 -0.2
.app_xip_area 639417 637993 -1424 -0.2
thermostat CYW30739B2-P5-EVK-01 (read/write) 661027 659811 -1216 -0.2
.app_xip_area 588285 587069 -1216 -0.2
CYW30739B2-P5-EVK-02 (read/write) 683495 682279 -1216 -0.2
.app_xip_area 608121 606905 -1216 -0.2
CYW30739B2-P5-EVK-03 (read/write) 683495 682279 -1216 -0.2
.app_xip_area 608121 606905 -1216 -0.2
efr32 lighting-app BRD4187C (read/write) 1072692 1070772 -1920 -0.2
.text 889168 887248 -1920 -0.2
lock-app BRD4338a (read/write) 964204 962500 -1704 -0.2
.text 702128 700424 -1704 -0.2
window-app BRD4187C (read/write) 1136496 1135104 -1392 -0.1
.text 968540 967148 -1392 -0.1
esp32 all-clusters-app c3devkit (read only) 1215496 1210338 -5158 -0.4
.flash.text 1215496 1210338 -5158 -0.4
m5stack (read only) 1256791 1253399 -3392 -0.3
.flash.text 1250627 1247235 -3392 -0.3
linux air-purifier-app debug (read only) 2724621 2713885 -10736 -0.4
.text 2352885 2341189 -11696 -0.5
all-clusters-app debug (read only) 6038857 6002721 -36136 -0.6
.text 5244051 5205011 -39040 -0.7
all-clusters-minimal-app debug (read only) 5322377 5290017 -32360 -0.6
.text 4787571 4752595 -34976 -0.7
bridge-app debug (read only) 4712809 4702073 -10736 -0.2
.text 4252003 4240307 -11696 -0.3
fabric-bridge-app debug (read only) 4580433 4569697 -10736 -0.2
.text 4128595 4116899 -11696 -0.3
lighting-app debug+rpc+ui (read only) 5636721 5615545 -21176 -0.4
.text 5025251 5002323 -22928 -0.5
lock-app debug (read only) 4773865 4757449 -16416 -0.3
.text 4296275 4278467 -17808 -0.4
ota-provider-app debug (read only) 4386009 4374321 -11688 -0.3
.text 3975203 3962483 -12720 -0.3
ota-requestor-app debug (read only) 4516729 4503137 -13592 -0.3
.text 4095267 4080499 -14768 -0.4
shell debug (read only) 3008185 2976793 -31392 -1.0
.text 2636786 2602850 -33936 -1.3
thermostat-no-ble arm64 (read only) 4503356 4491612 -11744 -0.3
.text 3999176 3985704 -13472 -0.3
tv-app debug (read only) 5849769 5831465 -18304 -0.3
.text 5300675 5280835 -19840 -0.4
tv-casting-app debug (read only) 10001769 9987241 -14528 -0.1
.text 9141027 9125251 -15776 -0.2
mbed lock-app-release cy8cproto_062_4343w (read/write) 2537192 2535784 -1408 -0.1
.text 1499876 1498468 -1408 -0.1
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1061900 1058788 -3112 -0.3
text 773388 769516 -3872 -0.5
nrf7002dk_nrf5340_cpuapp (read/write) 1238864 1235720 -3144 -0.3
text 799720 795816 -3904 -0.5
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1009572 1006532 -3040 -0.3
text 734964 731204 -3760 -0.5
nxp contact k32w0+release (read only) 576748 575876 -872 -0.2
(read/write) 83220 83212 -8 -0.0
.text 576212 575340 -872 -0.2
k32w1+release (read/write) 704628 703780 -848 -0.1
.text 591104 590256 -848 -0.1
light k32w0+release (read only) 610944 609760 -1184 -0.2
.text 610408 609224 -1184 -0.2
k32w1+release (read/write) 796752 795576 -1176 -0.1
.text 674488 673312 -1176 -0.2
psoc6 all-clusters cy8ckit_062s2_43012 (read/write) 1828060 1824420 -3640 -0.2
.text 1612460 1608820 -3640 -0.2
all-clusters-minimal cy8ckit_062s2_43012 (read/write) 1749340 1745908 -3432 -0.2
.text 1536836 1533404 -3432 -0.2
light cy8ckit_062s2_43012 (read/write) 1667764 1665540 -2224 -0.1
.text 1461980 1459756 -2224 -0.2
lock cy8ckit_062s2_43012 (read/write) 1696428 1694732 -1696 -0.1
.text 1463580 1461884 -1696 -0.1
qpg lighting-app qpg6105+debug (read/write) 839740 838532 -1208 -0.1
.text 651128 649920 -1208 -0.2
lock-app qpg6105+debug (read/write) 799868 798388 -1480 -0.2
.text 611260 609780 -1480 -0.2
stm32 light STM32WB5MM-DK (read/write) 624554 622586 -1968 -0.3
.text 391640 389192 -2448 -0.6
telink air-quality-sensor-app tlsr9528a_retention (read/write) 835690 834634 -1056 -0.1
text 625862 624564 -1298 -0.2
all-clusters-app tlsr9118bdk40d (read/write) 844080 840076 -4004 -0.5
text 601668 596928 -4740 -0.8
all-clusters-minimal-app tlsr9528a (read/write) 1060628 1056684 -3944 -0.4
text 773954 769292 -4662 -0.6
bridge-app tlsr9518adk80d (read/write) 916180 915048 -1132 -0.1
text 657454 656062 -1392 -0.2
contact-sensor-app tlsr9528a_retention (read/write) 838050 836486 -1564 -0.2
text 628280 626370 -1910 -0.3
light-switch-app-ota-shell-factory-data tlsr9528a (read/write) 949152 947520 -1632 -0.2
text 715240 713252 -1988 -0.3
lighting-app-ota-factory-data tlsr9118bdk40d (read/write) 772588 770068 -2520 -0.3
text 558224 555218 -3006 -0.5
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d (read/write) 1092744 1090216 -2528 -0.2
text 795654 792648 -3006 -0.4
lock-app-dfu tlsr9528a (read/write) 913144 911276 -1868 -0.2
text 661668 659414 -2254 -0.3
ota-requestor-app tlsr9518adk80d (read/write) 935364 933868 -1496 -0.2
text 676762 674946 -1816 -0.3
pump-app tlsr9258a (read/write) 832632 831576 -1056 -0.1
text 622304 621006 -1298 -0.2
pump-controller-app tlsr9118bdk40d (read/write) 608008 606952 -1056 -0.2
text 451420 450122 -1298 -0.3
smoke_co_alarm-app tlsr9528a_retention (read/write) 845910 844114 -1796 -0.2
text 634946 632770 -2176 -0.3
temperature-measurement-app-mars-ota tlsr9518adk80d (read/write) 860753 859621 -1132 -0.1
text 643874 642482 -1392 -0.2
thermostat tlsr9518adk80d (read/write) 827284 825712 -1572 -0.2
text 619742 617832 -1910 -0.3
window-covering tlsr9258a (read/write) 837336 835840 -1496 -0.2
text 624588 622772 -1816 -0.3
Full report (83 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink)
platform target config section 6b83689 a32fb0c change % change
bl602 lighting-app bl602 (read/write) 1446842 1444642 -2200 -0.2
.bss 85896 85896 0 0.0
.data 9512 9512 0 0.0
.rodata 159668 160028 360 0.2
.text 1111112 1108552 -2560 -0.2
bl602+mfd (read/write) 1461282 1459082 -2200 -0.2
.bss 86072 86072 0 0.0
.data 9488 9488 0 0.0
.rodata 158628 158988 360 0.2
.text 1126430 1123870 -2560 -0.2
bl602+rpc (read/write) 1494514 1492058 -2456 -0.2
.bss 93944 93944 0 0.0
.data 9896 9896 0 0.0
.rodata 167244 167604 360 0.2
.text 1142758 1139942 -2816 -0.2
bl702 lighting-app bl702 (read only) 3478 3478 0 0.0
(read/write) 1212699 1210499 -2200 -0.2
.bss 11185 11185 0 0.0
.data 3720 3720 0 0.0
.rodata 109220 109580 360 0.3
.text 981516 978956 -2560 -0.3
bl702+mfd (read only) 3478 3478 0 0.0
(read/write) 1223787 1221587 -2200 -0.2
.bss 11361 11361 0 0.0
.data 3696 3696 0 0.0
.rodata 108160 108520 360 0.3
.text 993526 990966 -2560 -0.3
bl702+rpc (read only) 3478 3478 0 0.0
(read/write) 1304163 1301963 -2200 -0.2
.bss 19669 19669 0 0.0
.data 4256 4256 0 0.0
.rodata 124592 124952 360 0.3
.text 1056224 1053664 -2560 -0.2
bl706-eth (read/write) 1029829 1027845 -1984 -0.2
.bss 23760 23760 0 0.0
.data 3264 3264 0 0.0
.rodata 102276 102596 320 0.3
.text 772064 769760 -2304 -0.3
bl706-wifi (read/write) 1263958 1261758 -2200 -0.2
.bss 10645 10645 0 0.0
.data 3712 3712 0 0.0
.rodata 123356 123716 360 0.3
.text 1003326 1000766 -2560 -0.3
bl702l lighting-app bl702l (read only) 512 512 0 0.0
(read/write) 1182292 1180092 -2200 -0.2
.bss 16396 16396 0 0.0
.data 5080 5080 0 0.0
.rodata 103224 103584 360 0.3
.text 974646 972086 -2560 -0.3
bl702l+mfd (read/write) 1194208 1191496 -2712 -0.2
.bss 16572 16572 0 0.0
.data 5064 5064 0 0.0
.rodata 102164 102524 360 0.4
.text 986968 984408 -2560 -0.3
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 (read only) 799252 797348 -1904 -0.2
(read/write) 177700 177700 0 0.0
.bss 99612 99612 0 0.0
.data 3604 3604 0 0.0
.rodata 85396 85876 480 0.6
.text 713592 711208 -2384 -0.3
lock-ftd LP_EM_CC1354P10_6 (read only) 814472 813048 -1424 -0.2
(read/write) 188172 188172 0 0.0
.bss 110100 110100 0 0.0
.data 3596 3596 0 0.0
.rodata 78968 79352 384 0.5
.text 735240 733432 -1808 -0.2
lock-mtd LP_EM_CC1354P10_6 (read only) 803820 802396 -1424 -0.2
(read/write) 182292 182292 0 0.0
.bss 104220 104220 0 0.0
.data 3596 3596 0 0.0
.rodata 106292 106676 384 0.4
.text 697264 695456 -1808 -0.3
pump-app LP_EM_CC1354P10_6 (read only) 756124 755308 -816 -0.1
(read/write) 176644 176644 0 0.0
.bss 98336 98336 0 0.0
.data 3588 3588 0 0.0
.rodata 81044 81284 240 0.3
.text 674816 673760 -1056 -0.2
pump-controller-app LP_EM_CC1354P10_6 (read only) 741796 740980 -816 -0.1
(read/write) 176884 176884 0 0.0
.bss 98576 98576 0 0.0
.data 3588 3588 0 0.0
.rodata 76828 77068 240 0.3
.text 664704 663648 -1056 -0.2
cc32xx air-purifier CC3235SF_LAUNCHXL (read only) 607342 606462 -880 -0.1
(read/write) 209716 209716 0 0.0
.bss 202932 202932 0 0.0
.data 1660 1660 0 0.0
.rodata 89958 90198 240 0.3
.text 515264 514144 -1120 -0.2
lock CC3235SF_LAUNCHXL (read only) 653238 651742 -1496 -0.2
(read/write) 209972 209972 0 0.0
.bss 203328 203328 0 0.0
.data 1524 1524 0 0.0
.rodata 110718 111078 360 0.3
.text 540396 538540 -1856 -0.3
cyw30739 light CYW30739B2-P5-EVK-01 (read/write) 742427 740507 -1920 -0.3
.app_xip_area 662373 660453 -1920 -0.3
.bss 73652 73652 0 0.0
.data 940 940 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
CYW30739B2-P5-EVK-02 (read/write) 764903 762983 -1920 -0.3
.app_xip_area 682217 680297 -1920 -0.3
.bss 75516 75516 0 0.0
.data 1708 1708 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
CYW30739B2-P5-EVK-03 (read/write) 764903 762983 -1920 -0.3
.app_xip_area 682217 680297 -1920 -0.3
.bss 75516 75516 0 0.0
.data 1708 1708 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
CYW930739M2EVB-02 (read/write) 714283 712363 -1920 -0.3
.app_xip_area 639161 637241 -1920 -0.3
.bss 68776 68776 0 0.0
.data 884 884 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
light-switch CYW30739B2-P5-EVK-01 (read/write) 679955 678699 -1256 -0.2
.app_xip_area 604197 602941 -1256 -0.2
.bss 69236 69236 0 0.0
.data 1060 1060 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
CYW30739B2-P5-EVK-02 (read/write) 702151 700895 -1256 -0.2
.app_xip_area 623841 622585 -1256 -0.2
.bss 71100 71100 0 0.0
.data 1748 1748 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
CYW30739B2-P5-EVK-03 (read/write) 702151 700895 -1256 -0.2
.app_xip_area 623841 622585 -1256 -0.2
.bss 71100 71100 0 0.0
.data 1748 1748 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
lock CYW30739B2-P5-EVK-01 (read/write) 698475 697051 -1424 -0.2
.app_xip_area 619701 618277 -1424 -0.2
.bss 72284 72284 0 0.0
.data 1028 1028 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
CYW30739B2-P5-EVK-02 (read/write) 720743 719319 -1424 -0.2
.app_xip_area 639417 637993 -1424 -0.2
.bss 74148 74148 0 0.0
.data 1716 1716 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
CYW30739B2-P5-EVK-03 (read/write) 720743 719319 -1424 -0.2
.app_xip_area 639417 637993 -1424 -0.2
.bss 74148 74148 0 0.0
.data 1716 1716 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
thermostat CYW30739B2-P5-EVK-01 (read/write) 661027 659811 -1216 -0.2
.app_xip_area 588285 587069 -1216 -0.2
.bss 66444 66444 0 0.0
.data 836 836 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
CYW30739B2-P5-EVK-02 (read/write) 683495 682279 -1216 -0.2
.app_xip_area 608121 606905 -1216 -0.2
.bss 68308 68308 0 0.0
.data 1604 1604 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
CYW30739B2-P5-EVK-03 (read/write) 683495 682279 -1216 -0.2
.app_xip_area 608121 606905 -1216 -0.2
.bss 68308 68308 0 0.0
.data 1604 1604 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
efr32 lighting-app BRD4187C (read/write) 1072692 1070772 -1920 -0.2
.bss 180056 180056 0 0.0
.data 3448 3448 0 0.0
.text 889168 887248 -1920 -0.2
lock-app BRD4338a (read/write) 964204 962500 -1704 -0.2
.bss 213260 213260 0 0.0
.data 29448 29448 0 0.0
.text 702128 700424 -1704 -0.2
window-app BRD4187C (read/write) 1136496 1135104 -1392 -0.1
.bss 164584 164584 0 0.0
.data 3352 3352 0 0.0
.text 968540 967148 -1392 -0.1
esp32 all-clusters-app c3devkit (read only) 1215496 1210338 -5158 -0.4
(read/write) 1751896 1752704 808 0.0
.dram0.bss 74744 74744 0 0.0
.dram0.data 13660 13660 0 0.0
.flash.rodata 253960 254768 808 0.3
.flash.text 1215496 1210338 -5158 -0.4
.iram0.text 75570 75570 0 0.0
m5stack (read only) 1256791 1253399 -3392 -0.3
(read/write) 536500 537308 808 0.2
.dram0.bss 79680 79680 0 0.0
.dram0.data 35196 35196 0 0.0
.flash.rodata 285704 286512 808 0.3
.flash.text 1250627 1247235 -3392 -0.3
.iram0.text 125403 125403 0 0.0
linux air-purifier-app debug (read only) 2724621 2713885 -10736 -0.4
(read/write) 132792 133336 544 0.4
.bss 47880 47880 0 0.0
.data 2304 2304 0 0.0
.data.rel.ro 76584 77144 560 0.7
.dynamic 608 608 0 0.0
.got 4576 4576 0 0.0
.init 27 27 0 0.0
.init_array 808 808 0 0.0
.rodata 188464 188464 0 0.0
.text 2352885 2341189 -11696 -0.5
all-clusters-app debug (read only) 6038857 6002721 -36136 -0.6
(read/write) 484304 485968 1664 0.3
.bss 136160 136160 0 0.0
.data 4592 4592 0 0.0
.data.rel.ro 336104 337752 1648 0.5
.dynamic 624 624 0 0.0
.got 5344 5344 0 0.0
.init 27 27 0 0.0
.init_array 1448 1448 0 0.0
.rodata 355824 355824 0 0.0
.text 5244051 5205011 -39040 -0.7
all-clusters-minimal-app debug (read only) 5322377 5290017 -32360 -0.6
(read/write) 240256 241728 1472 0.6
.bss 129024 129024 0 0.0
.data 4496 4496 0 0.0
.data.rel.ro 99640 101112 1472 1.5
.dynamic 624 624 0 0.0
.got 5264 5264 0 0.0
.init 27 27 0 0.0
.init_array 1176 1176 0 0.0
.rodata 294634 294634 0 0.0
.text 4787571 4752595 -34976 -0.7
bridge-app debug (read only) 4712809 4702073 -10736 -0.2
(read/write) 221168 221744 576 0.3
.bss 119552 119552 0 0.0
.data 6272 6272 0 0.0
.data.rel.ro 88608 89168 560 0.6
.dynamic 624 624 0 0.0
.got 5232 5232 0 0.0
.init 27 27 0 0.0
.init_array 872 872 0 0.0
.rodata 235050 235050 0 0.0
.text 4252003 4240307 -11696 -0.3
chip-tool debug (read only) 12175601 12175601 0 0.0
(read/write) 524872 524872 0 0.0
.bss 95160 95160 0 0.0
.data 5122 5122 0 0.0
.data.rel.ro 417336 417336 0 0.0
.dynamic 624 624 0 0.0
.got 5736 5736 0 0.0
.init 27 27 0 0.0
.init_array 840 840 0 0.0
.rodata 459449 459449 0 0.0
.text 11004531 11004531 0 0.0
chip-tool-ipv6only arm64 (read only) 11506244 11506244 0 0.0
(read/write) 591896 591896 0 0.0
.bss 104152 104152 0 0.0
.data 4512 4512 0 0.0
.data.rel.ro 457472 457472 0 0.0
.dynamic 512 512 0 0.0
.got 17280 17280 0 0.0
.init 24 24 0 0.0
.init_array 280 280 0 0.0
.rodata 361172 361172 0 0.0
.text 10259192 10259192 0 0.0
fabric-admin debug (read only) 11924161 11924177 16 0.0
(read/write) 517936 517936 0 0.0
.bss 94520 94520 0 0.0
.data 4866 4866 0 0.0
.data.rel.ro 411528 411528 0 0.0
.dynamic 624 624 0 0.0
.got 5584 5584 0 0.0
.init 27 27 0 0.0
.init_array 752 752 0 0.0
.rodata 430521 430521 0 0.0
.text 10796819 10796835 16 0.0
fabric-bridge-app debug (read only) 4580433 4569697 -10736 -0.2
(read/write) 213208 213752 544 0.3
.bss 115104 115104 0 0.0
.data 5056 5056 0 0.0
.data.rel.ro 86336 86896 560 0.6
.dynamic 624 624 0 0.0
.got 5240 5240 0 0.0
.init 27 27 0 0.0
.init_array 816 816 0 0.0
.rodata 228426 228426 0 0.0
.text 4128595 4116899 -11696 -0.3
lighting-app debug+rpc+ui (read only) 5636721 5615545 -21176 -0.4
(read/write) 229968 230960 992 0.4
.bss 120496 120496 0 0.0
.data 4896 4896 0 0.0
.data.rel.ro 97024 98016 992 1.0
.dynamic 672 672 0 0.0
.got 5864 5864 0 0.0
.init 27 27 0 0.0
.init_array 984 984 0 0.0
.rodata 359284 359284 0 0.0
.text 5025251 5002323 -22928 -0.5
lock-app debug (read only) 4773865 4757449 -16416 -0.3
(read/write) 208328 209128 800 0.4
.bss 114792 114792 0 0.0
.data 4192 4192 0 0.0
.data.rel.ro 82616 83416 800 1.0
.dynamic 624 624 0 0.0
.got 5184 5184 0 0.0
.init 27 27 0 0.0
.init_array 888 888 0 0.0
.rodata 260906 260906 0 0.0
.text 4296275 4278467 -17808 -0.4
ota-provider-app debug (read only) 4386009 4374321 -11688 -0.3
(read/write) 196896 197504 608 0.3
.bss 114656 114656 0 0.0
.data 4400 4400 0 0.0
.data.rel.ro 71856 72464 608 0.8
.dynamic 624 624 0 0.0
.got 4552 4552 0 0.0
.init 27 27 0 0.0
.init_array 760 760 0 0.0
.rodata 212778 212778 0 0.0
.text 3975203 3962483 -12720 -0.3
ota-requestor-app debug (read only) 4516729 4503137 -13592 -0.3
(read/write) 201264 201936 672 0.3
.bss 115552 115552 0 0.0
.data 4800 4800 0 0.0
.data.rel.ro 74960 75632 672 0.9
.dynamic 624 624 0 0.0
.got 4488 4488 0 0.0
.init 27 27 0 0.0
.init_array 808 808 0 0.0
.rodata 218890 218890 0 0.0
.text 4095267 4080499 -14768 -0.4
shell debug (read only) 3008185 2976793 -31392 -1.0
(read/write) 156888 158328 1440 0.9
.bss 60784 60784 0 0.0
.data 1424 1424 0 0.0
.data.rel.ro 88832 90272 1440 1.6
.dynamic 592 592 0 0.0
.got 4112 4112 0 0.0
.init 27 27 0 0.0
.init_array 1120 1120 0 0.0
.rodata 192128 192128 0 0.0
.text 2636786 2602850 -33936 -1.3
thermostat-no-ble arm64 (read only) 4503356 4491612 -11744 -0.3
(read/write) 246984 250536 3552 1.4
.bss 123144 123144 0 0.0
.data 3424 3424 0 0.0
.data.rel.ro 106048 106768 720 0.7
.dynamic 512 512 0 0.0
.got 9000 9144 144 1.6
.init 24 24 0 0.0
.init_array 448 448 0 0.0
.rodata 162516 162516 0 0.0
.text 3999176 3985704 -13472 -0.3
tv-app debug (read only) 5849769 5831465 -18304 -0.3
(read/write) 349120 350016 896 0.3
.bss 238640 238640 0 0.0
.data 6592 6592 0 0.0
.data.rel.ro 96600 97480 880 0.9
.dynamic 624 624 0 0.0
.got 5464 5464 0 0.0
.init 27 27 0 0.0
.init_array 1192 1192 0 0.0
.rodata 302410 302410 0 0.0
.text 5300675 5280835 -19840 -0.4
tv-casting-app debug (read only) 10001769 9987241 -14528 -0.1
(read/write) 343216 343952 736 0.2
.bss 156760 156760 0 0.0
.data 3008 3008 0 0.0
.data.rel.ro 176480 177200 720 0.4
.dynamic 624 624 0 0.0
.got 5096 5096 0 0.0
.init 27 27 0 0.0
.init_array 1232 1232 0 0.0
.rodata 389464 389464 0 0.0
.text 9141027 9125251 -15776 -0.2
mbed lock-app-release cy8cproto_062_4343w (read only) 6224 6224 0 0.0
(read/write) 2537192 2535784 -1408 -0.1
.bss 220928 220928 0 0.0
.data 5224 5224 0 0.0
.text 1499876 1498468 -1408 -0.1
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read only) 4 4 0 0.0
(read/write) 1061900 1058788 -3112 -0.3
bss 139209 139209 0 0.0
rodata 102028 102788 760 0.7
text 773388 769516 -3872 -0.5
nrf7002dk_nrf5340_cpuapp (read only) 4 4 0 0.0
(read/write) 1238864 1235720 -3144 -0.3
bss 137637 137637 0 0.0
rodata 151464 152224 760 0.5
text 799720 795816 -3904 -0.5
all-clusters-minimal-app nrf52840dk_nrf52840 (read only) 4 4 0 0.0
(read/write) 1009572 1006532 -3040 -0.3
bss 138107 138107 0 0.0
rodata 89284 90004 720 0.8
text 734964 731204 -3760 -0.5
nxp contact k32w0+release (read only) 576748 575876 -872 -0.2
(read/write) 83220 83212 -8 -0.0
.bss 67920 67920 0 0.0
.data 2204 2204 0 0.0
.text 576212 575340 -872 -0.2
k32w1+release (read only) 1024 1024 0 0.0
(read/write) 704628 703780 -848 -0.1
.bss 71272 71272 0 0.0
.data 2872 2872 0 0.0
.text 591104 590256 -848 -0.1
light k32w0+release (read only) 610944 609760 -1184 -0.2
(read/write) 82688 82688 0 0.0
.bss 67376 67376 0 0.0
.data 2224 2224 0 0.0
.text 610408 609224 -1184 -0.2
k32w1+release (read only) 1024 1024 0 0.0
(read/write) 796752 795576 -1176 -0.1
.bss 80816 80816 0 0.0
.data 2080 2080 0 0.0
.text 674488 673312 -1176 -0.2
psoc6 all-clusters cy8ckit_062s2_43012 (read only) 826128 826128 0 0.0
(read/write) 1828060 1824420 -3640 -0.2
.bss 204460 204460 0 0.0
.data 2752 2752 0 0.0
.text 1612460 1608820 -3640 -0.2
all-clusters-minimal cy8ckit_062s2_43012 (read only) 829224 829224 0 0.0
(read/write) 1749340 1745908 -3432 -0.2
.bss 201388 201388 0 0.0
.data 2728 2728 0 0.0
.text 1536836 1533404 -3432 -0.2
light cy8ckit_062s2_43012 (read only) 835944 835944 0 0.0
(read/write) 1667764 1665540 -2224 -0.1
.bss 194852 194852 0 0.0
.data 2544 2544 0 0.0
.text 1461980 1459756 -2224 -0.2
lock cy8ckit_062s2_43012 (read only) 808880 808880 0 0.0
(read/write) 1696428 1694732 -1696 -0.1
.bss 221932 221932 0 0.0
.data 2528 2528 0 0.0
.text 1463580 1461884 -1696 -0.1
qpg lighting-app qpg6105+debug (read/write) 839740 838532 -1208 -0.1
.bss 103780 103780 0 0.0
.data 864 864 0 0.0
.text 651128 649920 -1208 -0.2
lock-app qpg6105+debug (read/write) 799868 798388 -1480 -0.2
.bss 98444 98444 0 0.0
.data 876 876 0 0.0
.text 611260 609780 -1480 -0.2
stm32 light STM32WB5MM-DK (read/write) 624554 622586 -1968 -0.3
.bss 141060 141060 0 0.0
.data 672 672 0 0.0
.rodata 81564 82044 480 0.6
.text 391640 389192 -2448 -0.6
telink air-quality-sensor-app tlsr9528a_retention (read only) 51774 51774 0 0.0
(read/write) 835690 834634 -1056 -0.1
bss 49944 49944 0 0.0
text 625862 624564 -1298 -0.2
all-clusters-app tlsr9118bdk40d (read only) 160 160 0 0.0
(read/write) 844080 840076 -4004 -0.5
bss 79088 79088 0 0.0
noinit 46096 46096 0 0.0
text 601668 596928 -4740 -0.8
all-clusters-minimal-app tlsr9528a (read only) 47960 47960 0 0.0
(read/write) 1060628 1056684 -3944 -0.4
bss 110132 110132 0 0.0
text 773954 769292 -4662 -0.6
bridge-app tlsr9518adk80d (read only) 29042 29042 0 0.0
(read/write) 916180 915048 -1132 -0.1
bss 92888 92888 0 0.0
text 657454 656062 -1392 -0.2
contact-sensor-app tlsr9528a_retention (read only) 51774 51774 0 0.0
(read/write) 838050 836486 -1564 -0.2
bss 49988 49988 0 0.0
text 628280 626370 -1910 -0.3
light-switch-app-ota-shell-factory-data tlsr9528a (read only) 51584 51584 0 0.0
(read/write) 949152 947520 -1632 -0.2
bss 76580 76580 0 0.0
text 715240 713252 -1988 -0.3
lighting-app-ota-factory-data tlsr9118bdk40d (read only) 160 160 0 0.0
(read/write) 772588 770068 -2520 -0.3
bss 75336 75336 0 0.0
noinit 46096 46096 0 0.0
text 558224 555218 -3006 -0.5
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d (read only) 29122 29122 0 0.0
(read/write) 1092744 1090216 -2528 -0.2
bss 99980 99980 0 0.0
text 795654 792648 -3006 -0.4
lock-app-dfu tlsr9528a (read only) 51584 51584 0 0.0
(read/write) 913144 911276 -1868 -0.2
bss 69268 69268 0 0.0
text 661668 659414 -2254 -0.3
ota-requestor-app tlsr9518adk80d (read only) 29042 29042 0 0.0
(read/write) 935364 933868 -1496 -0.2
bss 92620 92620 0 0.0
text 676762 674946 -1816 -0.3
pump-app tlsr9258a (read only) 52568 52568 0 0.0
(read/write) 832632 831576 -1056 -0.1
bss 58232 58232 0 0.0
text 622304 621006 -1298 -0.2
pump-controller-app tlsr9118bdk40d (read only) 160 160 0 0.0
(read/write) 608008 606952 -1056 -0.2
bss 44160 44160 0 0.0
noinit 32512 32512 0 0.0
text 451420 450122 -1298 -0.3
shell tlsr9518adk80d (read only) 29042 29042 0 0.0
(read/write) 675304 675304 0 0.0
bss 71852 71852 0 0.0
text 462250 462250 0 0.0
smoke_co_alarm-app tlsr9528a_retention (read only) 51774 51774 0 0.0
(read/write) 845910 844114 -1796 -0.2
bss 51616 51616 0 0.0
text 634946 632770 -2176 -0.3
temperature-measurement-app-mars-ota tlsr9518adk80d (read only) 32220 32220 0 0.0
(read/write) 860753 859621 -1132 -0.1
bss 59804 59804 0 0.0
text 643874 642482 -1392 -0.2
thermostat tlsr9518adk80d (read only) 31872 31872 0 0.0
(read/write) 827284 825712 -1572 -0.2
bss 56492 56492 0 0.0
text 619742 617832 -1910 -0.3
window-covering tlsr9258a (read only) 52568 52568 0 0.0
(read/write) 837336 835840 -1496 -0.2
bss 58448 58448 0 0.0
text 624588 622772 -1816 -0.3

src/app/CommandHandler.h Outdated Show resolved Hide resolved
src/app/CommandHandler.h Show resolved Hide resolved
Copy link

github-actions bot commented May 27, 2024

PR #33620: Size comparison from 6b83689 to 46d905a

Increases above 0.2%:

platform target config section 6b83689 46d905a change % change
bl702 lighting-app bl702 .rodata 109220 109580 360 0.3
bl702+mfd .rodata 108160 108520 360 0.3
bl702+rpc .rodata 124592 124952 360 0.3
bl706-eth .rodata 102276 102596 320 0.3
bl706-wifi .rodata 123356 123716 360 0.3
bl702l lighting-app bl702l .rodata 103224 103584 360 0.3
bl702l+mfd .rodata 102164 102524 360 0.4
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 .rodata 85396 85876 480 0.6
lock-ftd LP_EM_CC1354P10_6 .rodata 78968 79352 384 0.5
lock-mtd LP_EM_CC1354P10_6 .rodata 106292 106676 384 0.4
pump-app LP_EM_CC1354P10_6 .rodata 81044 81284 240 0.3
pump-controller-app LP_EM_CC1354P10_6 .rodata 76828 77068 240 0.3
cc32xx air-purifier CC3235SF_LAUNCHXL .rodata 89958 90198 240 0.3
lock CC3235SF_LAUNCHXL .rodata 110718 111078 360 0.3
esp32 all-clusters-app c3devkit .flash.rodata 253960 254768 808 0.3
m5stack .flash.rodata 285704 286512 808 0.3
linux air-purifier-app debug (read/write) 132792 133336 544 0.4
.data.rel.ro 76584 77144 560 0.7
all-clusters-app debug (read/write) 484304 485968 1664 0.3
.data.rel.ro 336104 337752 1648 0.5
all-clusters-minimal-app debug (read/write) 240256 241728 1472 0.6
.data.rel.ro 99640 101112 1472 1.5
bridge-app debug (read/write) 221168 221744 576 0.3
.data.rel.ro 88608 89168 560 0.6
fabric-bridge-app debug (read/write) 213208 213752 544 0.3
.data.rel.ro 86336 86896 560 0.6
lighting-app debug+rpc+ui (read/write) 229968 230960 992 0.4
.data.rel.ro 97024 98016 992 1.0
lock-app debug (read/write) 208328 209128 800 0.4
.data.rel.ro 82616 83416 800 1.0
ota-provider-app debug (read/write) 196896 197504 608 0.3
.data.rel.ro 71856 72464 608 0.8
ota-requestor-app debug (read/write) 201264 201936 672 0.3
.data.rel.ro 74960 75632 672 0.9
shell debug (read/write) 156888 158328 1440 0.9
.data.rel.ro 88832 90272 1440 1.6
thermostat-no-ble arm64 (read/write) 246984 250536 3552 1.4
.data.rel.ro 106048 106768 720 0.7
.got 9000 9144 144 1.6
tv-app debug (read/write) 349120 350016 896 0.3
.data.rel.ro 96600 97480 880 0.9
tv-casting-app debug (read/write) 343216 343952 736 0.2
.data.rel.ro 176480 177200 720 0.4
nrfconnect all-clusters-app nrf52840dk_nrf52840 rodata 102028 102788 760 0.7
nrf7002dk_nrf5340_cpuapp rodata 151464 152224 760 0.5
all-clusters-minimal-app nrf52840dk_nrf52840 rodata 89284 90004 720 0.8
stm32 light STM32WB5MM-DK .rodata 81564 82044 480 0.6
Increases (37 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, esp32, linux, nrfconnect, stm32)
platform target config section 6b83689 46d905a change % change
bl602 lighting-app bl602 .rodata 159668 160028 360 0.2
bl602+mfd .rodata 158628 158988 360 0.2
bl602+rpc .rodata 167244 167604 360 0.2
bl702 lighting-app bl702 .rodata 109220 109580 360 0.3
bl702+mfd .rodata 108160 108520 360 0.3
bl702+rpc .rodata 124592 124952 360 0.3
bl706-eth .rodata 102276 102596 320 0.3
bl706-wifi .rodata 123356 123716 360 0.3
bl702l lighting-app bl702l .rodata 103224 103584 360 0.3
bl702l+mfd .rodata 102164 102524 360 0.4
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 .rodata 85396 85876 480 0.6
lock-ftd LP_EM_CC1354P10_6 .rodata 78968 79352 384 0.5
lock-mtd LP_EM_CC1354P10_6 .rodata 106292 106676 384 0.4
pump-app LP_EM_CC1354P10_6 .rodata 81044 81284 240 0.3
pump-controller-app LP_EM_CC1354P10_6 .rodata 76828 77068 240 0.3
cc32xx air-purifier CC3235SF_LAUNCHXL .rodata 89958 90198 240 0.3
lock CC3235SF_LAUNCHXL .rodata 110718 111078 360 0.3
esp32 all-clusters-app c3devkit (read/write) 1751896 1752704 808 0.0
.flash.rodata 253960 254768 808 0.3
m5stack (read/write) 536500 537308 808 0.2
.flash.rodata 285704 286512 808 0.3
linux air-purifier-app debug (read/write) 132792 133336 544 0.4
.data.rel.ro 76584 77144 560 0.7
all-clusters-app debug (read/write) 484304 485968 1664 0.3
.data.rel.ro 336104 337752 1648 0.5
all-clusters-minimal-app debug (read/write) 240256 241728 1472 0.6
.data.rel.ro 99640 101112 1472 1.5
bridge-app debug (read/write) 221168 221744 576 0.3
.data.rel.ro 88608 89168 560 0.6
fabric-admin debug (read only) 11924161 11924177 16 0.0
.text 10796819 10796835 16 0.0
fabric-bridge-app debug (read/write) 213208 213752 544 0.3
.data.rel.ro 86336 86896 560 0.6
lighting-app debug+rpc+ui (read/write) 229968 230960 992 0.4
.data.rel.ro 97024 98016 992 1.0
lock-app debug (read/write) 208328 209128 800 0.4
.data.rel.ro 82616 83416 800 1.0
ota-provider-app debug (read/write) 196896 197504 608 0.3
.data.rel.ro 71856 72464 608 0.8
ota-requestor-app debug (read/write) 201264 201936 672 0.3
.data.rel.ro 74960 75632 672 0.9
shell debug (read/write) 156888 158328 1440 0.9
.data.rel.ro 88832 90272 1440 1.6
thermostat-no-ble arm64 (read/write) 246984 250536 3552 1.4
.data.rel.ro 106048 106768 720 0.7
.got 9000 9144 144 1.6
tv-app debug (read/write) 349120 350016 896 0.3
.data.rel.ro 96600 97480 880 0.9
tv-casting-app debug (read/write) 343216 343952 736 0.2
.data.rel.ro 176480 177200 720 0.4
nrfconnect all-clusters-app nrf52840dk_nrf52840 rodata 102028 102788 760 0.7
nrf7002dk_nrf5340_cpuapp rodata 151464 152224 760 0.5
all-clusters-minimal-app nrf52840dk_nrf52840 rodata 89284 90004 720 0.8
stm32 light STM32WB5MM-DK .rodata 81564 82044 480 0.6
Decreases (79 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink)
platform target config section 6b83689 46d905a change % change
bl602 lighting-app bl602 (read/write) 1446842 1444642 -2200 -0.2
.text 1111112 1108552 -2560 -0.2
bl602+mfd (read/write) 1461282 1459082 -2200 -0.2
.text 1126430 1123870 -2560 -0.2
bl602+rpc (read/write) 1494514 1492058 -2456 -0.2
.text 1142758 1139942 -2816 -0.2
bl702 lighting-app bl702 (read/write) 1212699 1210499 -2200 -0.2
.text 981516 978956 -2560 -0.3
bl702+mfd (read/write) 1223787 1221587 -2200 -0.2
.text 993526 990966 -2560 -0.3
bl702+rpc (read/write) 1304163 1301963 -2200 -0.2
.text 1056224 1053664 -2560 -0.2
bl706-eth (read/write) 1029829 1027845 -1984 -0.2
.text 772064 769760 -2304 -0.3
bl706-wifi (read/write) 1263958 1261758 -2200 -0.2
.text 1003326 1000766 -2560 -0.3
bl702l lighting-app bl702l (read/write) 1182292 1180092 -2200 -0.2
.text 974646 972086 -2560 -0.3
bl702l+mfd (read/write) 1194208 1191496 -2712 -0.2
.text 986968 984408 -2560 -0.3
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 (read only) 799252 797348 -1904 -0.2
.text 713592 711208 -2384 -0.3
lock-ftd LP_EM_CC1354P10_6 (read only) 814472 813048 -1424 -0.2
.text 735240 733432 -1808 -0.2
lock-mtd LP_EM_CC1354P10_6 (read only) 803820 802396 -1424 -0.2
.text 697264 695456 -1808 -0.3
pump-app LP_EM_CC1354P10_6 (read only) 756124 755308 -816 -0.1
.text 674816 673760 -1056 -0.2
pump-controller-app LP_EM_CC1354P10_6 (read only) 741796 740980 -816 -0.1
.text 664704 663648 -1056 -0.2
cc32xx air-purifier CC3235SF_LAUNCHXL (read only) 607342 606462 -880 -0.1
.text 515264 514144 -1120 -0.2
lock CC3235SF_LAUNCHXL (read only) 653238 651742 -1496 -0.2
.text 540396 538540 -1856 -0.3
cyw30739 light CYW30739B2-P5-EVK-01 (read/write) 742427 740507 -1920 -0.3
.app_xip_area 662373 660453 -1920 -0.3
CYW30739B2-P5-EVK-02 (read/write) 764903 762983 -1920 -0.3
.app_xip_area 682217 680297 -1920 -0.3
CYW30739B2-P5-EVK-03 (read/write) 764903 762983 -1920 -0.3
.app_xip_area 682217 680297 -1920 -0.3
CYW930739M2EVB-02 (read/write) 714283 712363 -1920 -0.3
.app_xip_area 639161 637241 -1920 -0.3
light-switch CYW30739B2-P5-EVK-01 (read/write) 679955 678699 -1256 -0.2
.app_xip_area 604197 602941 -1256 -0.2
CYW30739B2-P5-EVK-02 (read/write) 702151 700895 -1256 -0.2
.app_xip_area 623841 622585 -1256 -0.2
CYW30739B2-P5-EVK-03 (read/write) 702151 700895 -1256 -0.2
.app_xip_area 623841 622585 -1256 -0.2
lock CYW30739B2-P5-EVK-01 (read/write) 698475 697051 -1424 -0.2
.app_xip_area 619701 618277 -1424 -0.2
CYW30739B2-P5-EVK-02 (read/write) 720743 719319 -1424 -0.2
.app_xip_area 639417 637993 -1424 -0.2
CYW30739B2-P5-EVK-03 (read/write) 720743 719319 -1424 -0.2
.app_xip_area 639417 637993 -1424 -0.2
thermostat CYW30739B2-P5-EVK-01 (read/write) 661027 659811 -1216 -0.2
.app_xip_area 588285 587069 -1216 -0.2
CYW30739B2-P5-EVK-02 (read/write) 683495 682279 -1216 -0.2
.app_xip_area 608121 606905 -1216 -0.2
CYW30739B2-P5-EVK-03 (read/write) 683495 682279 -1216 -0.2
.app_xip_area 608121 606905 -1216 -0.2
efr32 lighting-app BRD4187C (read/write) 1072692 1070772 -1920 -0.2
.text 889168 887248 -1920 -0.2
lock-app BRD4338a (read/write) 964204 962500 -1704 -0.2
.text 702128 700424 -1704 -0.2
window-app BRD4187C (read/write) 1136496 1135104 -1392 -0.1
.text 968540 967148 -1392 -0.1
esp32 all-clusters-app c3devkit (read only) 1215496 1210338 -5158 -0.4
.flash.text 1215496 1210338 -5158 -0.4
m5stack (read only) 1256791 1253399 -3392 -0.3
.flash.text 1250627 1247235 -3392 -0.3
linux air-purifier-app debug (read only) 2724621 2713885 -10736 -0.4
.text 2352885 2341189 -11696 -0.5
all-clusters-app debug (read only) 6038857 6002721 -36136 -0.6
.text 5244051 5205011 -39040 -0.7
all-clusters-minimal-app debug (read only) 5322377 5290017 -32360 -0.6
.text 4787571 4752595 -34976 -0.7
bridge-app debug (read only) 4712809 4702073 -10736 -0.2
.text 4252003 4240307 -11696 -0.3
fabric-bridge-app debug (read only) 4580433 4569697 -10736 -0.2
.text 4128595 4116899 -11696 -0.3
lighting-app debug+rpc+ui (read only) 5636721 5615545 -21176 -0.4
.text 5025251 5002323 -22928 -0.5
lock-app debug (read only) 4773865 4757449 -16416 -0.3
.text 4296275 4278467 -17808 -0.4
ota-provider-app debug (read only) 4386009 4374321 -11688 -0.3
.text 3975203 3962483 -12720 -0.3
ota-requestor-app debug (read only) 4516729 4503137 -13592 -0.3
.text 4095267 4080499 -14768 -0.4
shell debug (read only) 3008185 2976793 -31392 -1.0
.text 2636786 2602850 -33936 -1.3
thermostat-no-ble arm64 (read only) 4503356 4491612 -11744 -0.3
.text 3999176 3985704 -13472 -0.3
tv-app debug (read only) 5849769 5831465 -18304 -0.3
.text 5300675 5280835 -19840 -0.4
tv-casting-app debug (read only) 10001769 9987241 -14528 -0.1
.text 9141027 9125251 -15776 -0.2
mbed lock-app-release cy8cproto_062_4343w (read/write) 2537192 2535784 -1408 -0.1
.text 1499876 1498468 -1408 -0.1
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1061900 1058788 -3112 -0.3
text 773388 769516 -3872 -0.5
nrf7002dk_nrf5340_cpuapp (read/write) 1238864 1235720 -3144 -0.3
text 799720 795816 -3904 -0.5
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1009572 1006532 -3040 -0.3
text 734964 731204 -3760 -0.5
nxp contact k32w0+release (read only) 576748 575876 -872 -0.2
(read/write) 83220 83212 -8 -0.0
.text 576212 575340 -872 -0.2
k32w1+release (read/write) 704628 703780 -848 -0.1
.text 591104 590256 -848 -0.1
light k32w0+release (read only) 610944 609760 -1184 -0.2
.text 610408 609224 -1184 -0.2
k32w1+release (read/write) 796752 795576 -1176 -0.1
.text 674488 673312 -1176 -0.2
psoc6 all-clusters cy8ckit_062s2_43012 (read/write) 1828060 1824420 -3640 -0.2
.text 1612460 1608820 -3640 -0.2
all-clusters-minimal cy8ckit_062s2_43012 (read/write) 1749340 1745908 -3432 -0.2
.text 1536836 1533404 -3432 -0.2
light cy8ckit_062s2_43012 (read/write) 1667764 1665540 -2224 -0.1
.text 1461980 1459756 -2224 -0.2
lock cy8ckit_062s2_43012 (read/write) 1696428 1694732 -1696 -0.1
.text 1463580 1461884 -1696 -0.1
qpg lighting-app qpg6105+debug (read/write) 839740 838532 -1208 -0.1
.text 651128 649920 -1208 -0.2
lock-app qpg6105+debug (read/write) 799868 798388 -1480 -0.2
.text 611260 609780 -1480 -0.2
stm32 light STM32WB5MM-DK (read/write) 624554 622586 -1968 -0.3
.text 391640 389192 -2448 -0.6
telink air-quality-sensor-app tlsr9528a_retention (read/write) 835690 834634 -1056 -0.1
text 625862 624564 -1298 -0.2
all-clusters-app tlsr9118bdk40d (read/write) 844080 840076 -4004 -0.5
text 601668 596928 -4740 -0.8
all-clusters-minimal-app tlsr9528a (read/write) 1060628 1056684 -3944 -0.4
text 773954 769292 -4662 -0.6
bridge-app tlsr9518adk80d (read/write) 916180 915048 -1132 -0.1
text 657454 656062 -1392 -0.2
contact-sensor-app tlsr9528a_retention (read/write) 838050 836486 -1564 -0.2
text 628280 626370 -1910 -0.3
light-switch-app-ota-shell-factory-data tlsr9528a (read/write) 949152 947520 -1632 -0.2
text 715240 713252 -1988 -0.3
lighting-app-ota-factory-data tlsr9118bdk40d (read/write) 772588 770068 -2520 -0.3
text 558224 555218 -3006 -0.5
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d (read/write) 1092744 1090216 -2528 -0.2
text 795654 792648 -3006 -0.4
lock-app-dfu tlsr9528a (read/write) 913144 911276 -1868 -0.2
text 661668 659414 -2254 -0.3
ota-requestor-app tlsr9518adk80d (read/write) 935364 933868 -1496 -0.2
text 676762 674946 -1816 -0.3
pump-app tlsr9258a (read/write) 832632 831576 -1056 -0.1
text 622304 621006 -1298 -0.2
pump-controller-app tlsr9118bdk40d (read/write) 608008 606952 -1056 -0.2
text 451420 450122 -1298 -0.3
smoke_co_alarm-app tlsr9528a_retention (read/write) 845910 844114 -1796 -0.2
text 634946 632770 -2176 -0.3
temperature-measurement-app-mars-ota tlsr9518adk80d (read/write) 860753 859621 -1132 -0.1
text 643874 642482 -1392 -0.2
thermostat tlsr9518adk80d (read/write) 827284 825712 -1572 -0.2
text 619742 617832 -1910 -0.3
window-covering tlsr9258a (read/write) 837336 835840 -1496 -0.2
text 624588 622772 -1816 -0.3
Full report (83 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink)
platform target config section 6b83689 46d905a change % change
bl602 lighting-app bl602 (read/write) 1446842 1444642 -2200 -0.2
.bss 85896 85896 0 0.0
.data 9512 9512 0 0.0
.rodata 159668 160028 360 0.2
.text 1111112 1108552 -2560 -0.2
bl602+mfd (read/write) 1461282 1459082 -2200 -0.2
.bss 86072 86072 0 0.0
.data 9488 9488 0 0.0
.rodata 158628 158988 360 0.2
.text 1126430 1123870 -2560 -0.2
bl602+rpc (read/write) 1494514 1492058 -2456 -0.2
.bss 93944 93944 0 0.0
.data 9896 9896 0 0.0
.rodata 167244 167604 360 0.2
.text 1142758 1139942 -2816 -0.2
bl702 lighting-app bl702 (read only) 3478 3478 0 0.0
(read/write) 1212699 1210499 -2200 -0.2
.bss 11185 11185 0 0.0
.data 3720 3720 0 0.0
.rodata 109220 109580 360 0.3
.text 981516 978956 -2560 -0.3
bl702+mfd (read only) 3478 3478 0 0.0
(read/write) 1223787 1221587 -2200 -0.2
.bss 11361 11361 0 0.0
.data 3696 3696 0 0.0
.rodata 108160 108520 360 0.3
.text 993526 990966 -2560 -0.3
bl702+rpc (read only) 3478 3478 0 0.0
(read/write) 1304163 1301963 -2200 -0.2
.bss 19669 19669 0 0.0
.data 4256 4256 0 0.0
.rodata 124592 124952 360 0.3
.text 1056224 1053664 -2560 -0.2
bl706-eth (read/write) 1029829 1027845 -1984 -0.2
.bss 23760 23760 0 0.0
.data 3264 3264 0 0.0
.rodata 102276 102596 320 0.3
.text 772064 769760 -2304 -0.3
bl706-wifi (read/write) 1263958 1261758 -2200 -0.2
.bss 10645 10645 0 0.0
.data 3712 3712 0 0.0
.rodata 123356 123716 360 0.3
.text 1003326 1000766 -2560 -0.3
bl702l lighting-app bl702l (read only) 512 512 0 0.0
(read/write) 1182292 1180092 -2200 -0.2
.bss 16396 16396 0 0.0
.data 5080 5080 0 0.0
.rodata 103224 103584 360 0.3
.text 974646 972086 -2560 -0.3
bl702l+mfd (read/write) 1194208 1191496 -2712 -0.2
.bss 16572 16572 0 0.0
.data 5064 5064 0 0.0
.rodata 102164 102524 360 0.4
.text 986968 984408 -2560 -0.3
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 (read only) 799252 797348 -1904 -0.2
(read/write) 177700 177700 0 0.0
.bss 99612 99612 0 0.0
.data 3604 3604 0 0.0
.rodata 85396 85876 480 0.6
.text 713592 711208 -2384 -0.3
lock-ftd LP_EM_CC1354P10_6 (read only) 814472 813048 -1424 -0.2
(read/write) 188172 188172 0 0.0
.bss 110100 110100 0 0.0
.data 3596 3596 0 0.0
.rodata 78968 79352 384 0.5
.text 735240 733432 -1808 -0.2
lock-mtd LP_EM_CC1354P10_6 (read only) 803820 802396 -1424 -0.2
(read/write) 182292 182292 0 0.0
.bss 104220 104220 0 0.0
.data 3596 3596 0 0.0
.rodata 106292 106676 384 0.4
.text 697264 695456 -1808 -0.3
pump-app LP_EM_CC1354P10_6 (read only) 756124 755308 -816 -0.1
(read/write) 176644 176644 0 0.0
.bss 98336 98336 0 0.0
.data 3588 3588 0 0.0
.rodata 81044 81284 240 0.3
.text 674816 673760 -1056 -0.2
pump-controller-app LP_EM_CC1354P10_6 (read only) 741796 740980 -816 -0.1
(read/write) 176884 176884 0 0.0
.bss 98576 98576 0 0.0
.data 3588 3588 0 0.0
.rodata 76828 77068 240 0.3
.text 664704 663648 -1056 -0.2
cc32xx air-purifier CC3235SF_LAUNCHXL (read only) 607342 606462 -880 -0.1
(read/write) 209716 209716 0 0.0
.bss 202932 202932 0 0.0
.data 1660 1660 0 0.0
.rodata 89958 90198 240 0.3
.text 515264 514144 -1120 -0.2
lock CC3235SF_LAUNCHXL (read only) 653238 651742 -1496 -0.2
(read/write) 209972 209972 0 0.0
.bss 203328 203328 0 0.0
.data 1524 1524 0 0.0
.rodata 110718 111078 360 0.3
.text 540396 538540 -1856 -0.3
cyw30739 light CYW30739B2-P5-EVK-01 (read/write) 742427 740507 -1920 -0.3
.app_xip_area 662373 660453 -1920 -0.3
.bss 73652 73652 0 0.0
.data 940 940 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
CYW30739B2-P5-EVK-02 (read/write) 764903 762983 -1920 -0.3
.app_xip_area 682217 680297 -1920 -0.3
.bss 75516 75516 0 0.0
.data 1708 1708 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
CYW30739B2-P5-EVK-03 (read/write) 764903 762983 -1920 -0.3
.app_xip_area 682217 680297 -1920 -0.3
.bss 75516 75516 0 0.0
.data 1708 1708 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
CYW930739M2EVB-02 (read/write) 714283 712363 -1920 -0.3
.app_xip_area 639161 637241 -1920 -0.3
.bss 68776 68776 0 0.0
.data 884 884 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
light-switch CYW30739B2-P5-EVK-01 (read/write) 679955 678699 -1256 -0.2
.app_xip_area 604197 602941 -1256 -0.2
.bss 69236 69236 0 0.0
.data 1060 1060 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
CYW30739B2-P5-EVK-02 (read/write) 702151 700895 -1256 -0.2
.app_xip_area 623841 622585 -1256 -0.2
.bss 71100 71100 0 0.0
.data 1748 1748 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
CYW30739B2-P5-EVK-03 (read/write) 702151 700895 -1256 -0.2
.app_xip_area 623841 622585 -1256 -0.2
.bss 71100 71100 0 0.0
.data 1748 1748 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
lock CYW30739B2-P5-EVK-01 (read/write) 698475 697051 -1424 -0.2
.app_xip_area 619701 618277 -1424 -0.2
.bss 72284 72284 0 0.0
.data 1028 1028 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
CYW30739B2-P5-EVK-02 (read/write) 720743 719319 -1424 -0.2
.app_xip_area 639417 637993 -1424 -0.2
.bss 74148 74148 0 0.0
.data 1716 1716 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
CYW30739B2-P5-EVK-03 (read/write) 720743 719319 -1424 -0.2
.app_xip_area 639417 637993 -1424 -0.2
.bss 74148 74148 0 0.0
.data 1716 1716 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
thermostat CYW30739B2-P5-EVK-01 (read/write) 661027 659811 -1216 -0.2
.app_xip_area 588285 587069 -1216 -0.2
.bss 66444 66444 0 0.0
.data 836 836 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
CYW30739B2-P5-EVK-02 (read/write) 683495 682279 -1216 -0.2
.app_xip_area 608121 606905 -1216 -0.2
.bss 68308 68308 0 0.0
.data 1604 1604 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
CYW30739B2-P5-EVK-03 (read/write) 683495 682279 -1216 -0.2
.app_xip_area 608121 606905 -1216 -0.2
.bss 68308 68308 0 0.0
.data 1604 1604 0 0.0
.rodata 0 0 0 0.0
.text 2040 2040 0 0.0
efr32 lighting-app BRD4187C (read/write) 1072692 1070772 -1920 -0.2
.bss 180056 180056 0 0.0
.data 3448 3448 0 0.0
.text 889168 887248 -1920 -0.2
lock-app BRD4338a (read/write) 964204 962500 -1704 -0.2
.bss 213260 213260 0 0.0
.data 29448 29448 0 0.0
.text 702128 700424 -1704 -0.2
window-app BRD4187C (read/write) 1136496 1135104 -1392 -0.1
.bss 164584 164584 0 0.0
.data 3352 3352 0 0.0
.text 968540 967148 -1392 -0.1
esp32 all-clusters-app c3devkit (read only) 1215496 1210338 -5158 -0.4
(read/write) 1751896 1752704 808 0.0
.dram0.bss 74744 74744 0 0.0
.dram0.data 13660 13660 0 0.0
.flash.rodata 253960 254768 808 0.3
.flash.text 1215496 1210338 -5158 -0.4
.iram0.text 75570 75570 0 0.0
m5stack (read only) 1256791 1253399 -3392 -0.3
(read/write) 536500 537308 808 0.2
.dram0.bss 79680 79680 0 0.0
.dram0.data 35196 35196 0 0.0
.flash.rodata 285704 286512 808 0.3
.flash.text 1250627 1247235 -3392 -0.3
.iram0.text 125403 125403 0 0.0
linux air-purifier-app debug (read only) 2724621 2713885 -10736 -0.4
(read/write) 132792 133336 544 0.4
.bss 47880 47880 0 0.0
.data 2304 2304 0 0.0
.data.rel.ro 76584 77144 560 0.7
.dynamic 608 608 0 0.0
.got 4576 4576 0 0.0
.init 27 27 0 0.0
.init_array 808 808 0 0.0
.rodata 188464 188464 0 0.0
.text 2352885 2341189 -11696 -0.5
all-clusters-app debug (read only) 6038857 6002721 -36136 -0.6
(read/write) 484304 485968 1664 0.3
.bss 136160 136160 0 0.0
.data 4592 4592 0 0.0
.data.rel.ro 336104 337752 1648 0.5
.dynamic 624 624 0 0.0
.got 5344 5344 0 0.0
.init 27 27 0 0.0
.init_array 1448 1448 0 0.0
.rodata 355824 355824 0 0.0
.text 5244051 5205011 -39040 -0.7
all-clusters-minimal-app debug (read only) 5322377 5290017 -32360 -0.6
(read/write) 240256 241728 1472 0.6
.bss 129024 129024 0 0.0
.data 4496 4496 0 0.0
.data.rel.ro 99640 101112 1472 1.5
.dynamic 624 624 0 0.0
.got 5264 5264 0 0.0
.init 27 27 0 0.0
.init_array 1176 1176 0 0.0
.rodata 294634 294634 0 0.0
.text 4787571 4752595 -34976 -0.7
bridge-app debug (read only) 4712809 4702073 -10736 -0.2
(read/write) 221168 221744 576 0.3
.bss 119552 119552 0 0.0
.data 6272 6272 0 0.0
.data.rel.ro 88608 89168 560 0.6
.dynamic 624 624 0 0.0
.got 5232 5232 0 0.0
.init 27 27 0 0.0
.init_array 872 872 0 0.0
.rodata 235050 235050 0 0.0
.text 4252003 4240307 -11696 -0.3
chip-tool debug (read only) 12175601 12175601 0 0.0
(read/write) 524872 524872 0 0.0
.bss 95160 95160 0 0.0
.data 5122 5122 0 0.0
.data.rel.ro 417336 417336 0 0.0
.dynamic 624 624 0 0.0
.got 5736 5736 0 0.0
.init 27 27 0 0.0
.init_array 840 840 0 0.0
.rodata 459449 459449 0 0.0
.text 11004531 11004531 0 0.0
chip-tool-ipv6only arm64 (read only) 11506244 11506244 0 0.0
(read/write) 591896 591896 0 0.0
.bss 104152 104152 0 0.0
.data 4512 4512 0 0.0
.data.rel.ro 457472 457472 0 0.0
.dynamic 512 512 0 0.0
.got 17280 17280 0 0.0
.init 24 24 0 0.0
.init_array 280 280 0 0.0
.rodata 361172 361172 0 0.0
.text 10259192 10259192 0 0.0
fabric-admin debug (read only) 11924161 11924177 16 0.0
(read/write) 517936 517936 0 0.0
.bss 94520 94520 0 0.0
.data 4866 4866 0 0.0
.data.rel.ro 411528 411528 0 0.0
.dynamic 624 624 0 0.0
.got 5584 5584 0 0.0
.init 27 27 0 0.0
.init_array 752 752 0 0.0
.rodata 430521 430521 0 0.0
.text 10796819 10796835 16 0.0
fabric-bridge-app debug (read only) 4580433 4569697 -10736 -0.2
(read/write) 213208 213752 544 0.3
.bss 115104 115104 0 0.0
.data 5056 5056 0 0.0
.data.rel.ro 86336 86896 560 0.6
.dynamic 624 624 0 0.0
.got 5240 5240 0 0.0
.init 27 27 0 0.0
.init_array 816 816 0 0.0
.rodata 228426 228426 0 0.0
.text 4128595 4116899 -11696 -0.3
lighting-app debug+rpc+ui (read only) 5636721 5615545 -21176 -0.4
(read/write) 229968 230960 992 0.4
.bss 120496 120496 0 0.0
.data 4896 4896 0 0.0
.data.rel.ro 97024 98016 992 1.0
.dynamic 672 672 0 0.0
.got 5864 5864 0 0.0
.init 27 27 0 0.0
.init_array 984 984 0 0.0
.rodata 359284 359284 0 0.0
.text 5025251 5002323 -22928 -0.5
lock-app debug (read only) 4773865 4757449 -16416 -0.3
(read/write) 208328 209128 800 0.4
.bss 114792 114792 0 0.0
.data 4192 4192 0 0.0
.data.rel.ro 82616 83416 800 1.0
.dynamic 624 624 0 0.0
.got 5184 5184 0 0.0
.init 27 27 0 0.0
.init_array 888 888 0 0.0
.rodata 260906 260906 0 0.0
.text 4296275 4278467 -17808 -0.4
ota-provider-app debug (read only) 4386009 4374321 -11688 -0.3
(read/write) 196896 197504 608 0.3
.bss 114656 114656 0 0.0
.data 4400 4400 0 0.0
.data.rel.ro 71856 72464 608 0.8
.dynamic 624 624 0 0.0
.got 4552 4552 0 0.0
.init 27 27 0 0.0
.init_array 760 760 0 0.0
.rodata 212778 212778 0 0.0
.text 3975203 3962483 -12720 -0.3
ota-requestor-app debug (read only) 4516729 4503137 -13592 -0.3
(read/write) 201264 201936 672 0.3
.bss 115552 115552 0 0.0
.data 4800 4800 0 0.0
.data.rel.ro 74960 75632 672 0.9
.dynamic 624 624 0 0.0
.got 4488 4488 0 0.0
.init 27 27 0 0.0
.init_array 808 808 0 0.0
.rodata 218890 218890 0 0.0
.text 4095267 4080499 -14768 -0.4
shell debug (read only) 3008185 2976793 -31392 -1.0
(read/write) 156888 158328 1440 0.9
.bss 60784 60784 0 0.0
.data 1424 1424 0 0.0
.data.rel.ro 88832 90272 1440 1.6
.dynamic 592 592 0 0.0
.got 4112 4112 0 0.0
.init 27 27 0 0.0
.init_array 1120 1120 0 0.0
.rodata 192128 192128 0 0.0
.text 2636786 2602850 -33936 -1.3
thermostat-no-ble arm64 (read only) 4503356 4491612 -11744 -0.3
(read/write) 246984 250536 3552 1.4
.bss 123144 123144 0 0.0
.data 3424 3424 0 0.0
.data.rel.ro 106048 106768 720 0.7
.dynamic 512 512 0 0.0
.got 9000 9144 144 1.6
.init 24 24 0 0.0
.init_array 448 448 0 0.0
.rodata 162516 162516 0 0.0
.text 3999176 3985704 -13472 -0.3
tv-app debug (read only) 5849769 5831465 -18304 -0.3
(read/write) 349120 350016 896 0.3
.bss 238640 238640 0 0.0
.data 6592 6592 0 0.0
.data.rel.ro 96600 97480 880 0.9
.dynamic 624 624 0 0.0
.got 5464 5464 0 0.0
.init 27 27 0 0.0
.init_array 1192 1192 0 0.0
.rodata 302410 302410 0 0.0
.text 5300675 5280835 -19840 -0.4
tv-casting-app debug (read only) 10001769 9987241 -14528 -0.1
(read/write) 343216 343952 736 0.2
.bss 156760 156760 0 0.0
.data 3008 3008 0 0.0
.data.rel.ro 176480 177200 720 0.4
.dynamic 624 624 0 0.0
.got 5096 5096 0 0.0
.init 27 27 0 0.0
.init_array 1232 1232 0 0.0
.rodata 389464 389464 0 0.0
.text 9141027 9125251 -15776 -0.2
mbed lock-app-release cy8cproto_062_4343w (read only) 6224 6224 0 0.0
(read/write) 2537192 2535784 -1408 -0.1
.bss 220928 220928 0 0.0
.data 5224 5224 0 0.0
.text 1499876 1498468 -1408 -0.1
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read only) 4 4 0 0.0
(read/write) 1061900 1058788 -3112 -0.3
bss 139209 139209 0 0.0
rodata 102028 102788 760 0.7
text 773388 769516 -3872 -0.5
nrf7002dk_nrf5340_cpuapp (read only) 4 4 0 0.0
(read/write) 1238864 1235720 -3144 -0.3
bss 137637 137637 0 0.0
rodata 151464 152224 760 0.5
text 799720 795816 -3904 -0.5
all-clusters-minimal-app nrf52840dk_nrf52840 (read only) 4 4 0 0.0
(read/write) 1009572 1006532 -3040 -0.3
bss 138107 138107 0 0.0
rodata 89284 90004 720 0.8
text 734964 731204 -3760 -0.5
nxp contact k32w0+release (read only) 576748 575876 -872 -0.2
(read/write) 83220 83212 -8 -0.0
.bss 67920 67920 0 0.0
.data 2204 2204 0 0.0
.text 576212 575340 -872 -0.2
k32w1+release (read only) 1024 1024 0 0.0
(read/write) 704628 703780 -848 -0.1
.bss 71272 71272 0 0.0
.data 2872 2872 0 0.0
.text 591104 590256 -848 -0.1
light k32w0+release (read only) 610944 609760 -1184 -0.2
(read/write) 82688 82688 0 0.0
.bss 67376 67376 0 0.0
.data 2224 2224 0 0.0
.text 610408 609224 -1184 -0.2
k32w1+release (read only) 1024 1024 0 0.0
(read/write) 796752 795576 -1176 -0.1
.bss 80816 80816 0 0.0
.data 2080 2080 0 0.0
.text 674488 673312 -1176 -0.2
psoc6 all-clusters cy8ckit_062s2_43012 (read only) 826128 826128 0 0.0
(read/write) 1828060 1824420 -3640 -0.2
.bss 204460 204460 0 0.0
.data 2752 2752 0 0.0
.text 1612460 1608820 -3640 -0.2
all-clusters-minimal cy8ckit_062s2_43012 (read only) 829224 829224 0 0.0
(read/write) 1749340 1745908 -3432 -0.2
.bss 201388 201388 0 0.0
.data 2728 2728 0 0.0
.text 1536836 1533404 -3432 -0.2
light cy8ckit_062s2_43012 (read only) 835944 835944 0 0.0
(read/write) 1667764 1665540 -2224 -0.1
.bss 194852 194852 0 0.0
.data 2544 2544 0 0.0
.text 1461980 1459756 -2224 -0.2
lock cy8ckit_062s2_43012 (read only) 808880 808880 0 0.0
(read/write) 1696428 1694732 -1696 -0.1
.bss 221932 221932 0 0.0
.data 2528 2528 0 0.0
.text 1463580 1461884 -1696 -0.1
qpg lighting-app qpg6105+debug (read/write) 839740 838532 -1208 -0.1
.bss 103780 103780 0 0.0
.data 864 864 0 0.0
.text 651128 649920 -1208 -0.2
lock-app qpg6105+debug (read/write) 799868 798388 -1480 -0.2
.bss 98444 98444 0 0.0
.data 876 876 0 0.0
.text 611260 609780 -1480 -0.2
stm32 light STM32WB5MM-DK (read/write) 624554 622586 -1968 -0.3
.bss 141060 141060 0 0.0
.data 672 672 0 0.0
.rodata 81564 82044 480 0.6
.text 391640 389192 -2448 -0.6
telink air-quality-sensor-app tlsr9528a_retention (read only) 51774 51774 0 0.0
(read/write) 835690 834634 -1056 -0.1
bss 49944 49944 0 0.0
text 625862 624564 -1298 -0.2
all-clusters-app tlsr9118bdk40d (read only) 160 160 0 0.0
(read/write) 844080 840076 -4004 -0.5
bss 79088 79088 0 0.0
noinit 46096 46096 0 0.0
text 601668 596928 -4740 -0.8
all-clusters-minimal-app tlsr9528a (read only) 47960 47960 0 0.0
(read/write) 1060628 1056684 -3944 -0.4
bss 110132 110132 0 0.0
text 773954 769292 -4662 -0.6
bridge-app tlsr9518adk80d (read only) 29042 29042 0 0.0
(read/write) 916180 915048 -1132 -0.1
bss 92888 92888 0 0.0
text 657454 656062 -1392 -0.2
contact-sensor-app tlsr9528a_retention (read only) 51774 51774 0 0.0
(read/write) 838050 836486 -1564 -0.2
bss 49988 49988 0 0.0
text 628280 626370 -1910 -0.3
light-switch-app-ota-shell-factory-data tlsr9528a (read only) 51584 51584 0 0.0
(read/write) 949152 947520 -1632 -0.2
bss 76580 76580 0 0.0
text 715240 713252 -1988 -0.3
lighting-app-ota-factory-data tlsr9118bdk40d (read only) 160 160 0 0.0
(read/write) 772588 770068 -2520 -0.3
bss 75336 75336 0 0.0
noinit 46096 46096 0 0.0
text 558224 555218 -3006 -0.5
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d (read only) 29122 29122 0 0.0
(read/write) 1092744 1090216 -2528 -0.2
bss 99980 99980 0 0.0
text 795654 792648 -3006 -0.4
lock-app-dfu tlsr9528a (read only) 51584 51584 0 0.0
(read/write) 913144 911276 -1868 -0.2
bss 69268 69268 0 0.0
text 661668 659414 -2254 -0.3
ota-requestor-app tlsr9518adk80d (read only) 29042 29042 0 0.0
(read/write) 935364 933868 -1496 -0.2
bss 92620 92620 0 0.0
text 676762 674946 -1816 -0.3
pump-app tlsr9258a (read only) 52568 52568 0 0.0
(read/write) 832632 831576 -1056 -0.1
bss 58232 58232 0 0.0
text 622304 621006 -1298 -0.2
pump-controller-app tlsr9118bdk40d (read only) 160 160 0 0.0
(read/write) 608008 606952 -1056 -0.2
bss 44160 44160 0 0.0
noinit 32512 32512 0 0.0
text 451420 450122 -1298 -0.3
shell tlsr9518adk80d (read only) 29042 29042 0 0.0
(read/write) 675304 675304 0 0.0
bss 71852 71852 0 0.0
text 462250 462250 0 0.0
smoke_co_alarm-app tlsr9528a_retention (read only) 51774 51774 0 0.0
(read/write) 845910 844114 -1796 -0.2
bss 51616 51616 0 0.0
text 634946 632770 -2176 -0.3
temperature-measurement-app-mars-ota tlsr9518adk80d (read only) 32220 32220 0 0.0
(read/write) 860753 859621 -1132 -0.1
bss 59804 59804 0 0.0
text 643874 642482 -1392 -0.2
thermostat tlsr9518adk80d (read only) 31872 31872 0 0.0
(read/write) 827284 825712 -1572 -0.2
bss 56492 56492 0 0.0
text 619742 617832 -1910 -0.3
window-covering tlsr9258a (read only) 52568 52568 0 0.0
(read/write) 837336 835840 -1496 -0.2
bss 58448 58448 0 0.0
text 624588 622772 -1816 -0.3

@andy31415 andy31415 merged commit 16d6475 into project-chip:master May 28, 2024
66 of 68 checks passed
public:
virtual ~EncoderToTLV() = default;

virtual CHIP_ERROR Encode(TLV::TLVWriter &, TLV::Tag tag) = 0;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggest naming the writer arg

class DataModelEncoderToTLV : public EncoderToTLV
{
public:
DataModelEncoderToTLV(const T & value) : mValue(value) {}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This has an ownership time consideration. Consider documenting.

public:
DataModelEncoderToTLV(const T & value) : mValue(value) {}

virtual CHIP_ERROR Encode(TLV::TLVWriter & writer, TLV::Tag tag) { return DataModel::Encode(writer, tag, mValue); }
Copy link
Contributor

@tcarmelveilleux tcarmelveilleux May 28, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please remove virtual and specify override

@@ -350,9 +399,21 @@ class CommandHandler
* @param [in] aData the data for the response.
*/
template <typename CommandData>
void AddResponse(const ConcreteCommandPath & aRequestCommandPath, const CommandData & aData)
inline void AddResponse(const ConcreteCommandPath & aRequestCommandPath, const CommandData & aData)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why inline?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I looked to reduce actual template explosion of typed function code and wanted to leave it up to the caller to generate the equivalent 'encoder' logic.

I will check to see if inline has any effect on code sizes ... I would probably be biased to use whatever uses the least flash.

@@ -57,6 +57,32 @@
namespace chip {
namespace app {

/// Defines an abstract class of something that can be encoded
/// into a TLV with a given data tag
class EncoderToTLV
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is this CommandHandler-specific? And if it is, why is it in the chip::app namespace?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was the minimal delta. The correct thing is probably for this to live close to DataModel::Encode since it ends up being like that. I will move it as a followup.

virtual CHIP_ERROR Encode(TLV::TLVWriter &, TLV::Tag tag) = 0;
};

/// An `EncoderToTLV` the uses `DataModel::Encode` to encode things.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"the uses"?

}

/**
* API for adding a data response. The encoded is generally expected to encode
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is "the encoded"?

* Most applications are likely to use `AddResponseData` as a more convenient
* one-call that auto-sets command ID and creates the underlying encoders.
*/
CHIP_ERROR AddResponseDataViaEncoder(const ConcreteCommandPath & aRequestCommandPath, CommandId commandId,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why does this need the "ViaEncoder" suffix? Why not just call this AddResponseData? It has different arguments from the template version, so confusion should not be an issue.

Copy link
Contributor Author

@andy31415 andy31415 May 29, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It did not have different arguments originally (when I did not notice we need a commandId). I will change them back.

* The encoder would generally encode a ClusterName::Commands::CommandName::Type with
* the corresponding `GetCommandId` call.
*/
void AddResponseViaEncoder(const ConcreteCommandPath & aRequestCommandPath, CommandId commandId, EncoderToTLV & encoder)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Again, why the "ViaEncoder" suffix?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I had it without ViaEncoder at first however then <template typename T>void AddResponse(const ConcreteCommandPath&, T> and void AddResponse(const ConcreteCommandPath&, EncoderToTLV &encoder) seemed ambigous.

In the mean time I had to add commandId, so I could rename them as well I guess. This was iterated a few times, can be more.

@@ -640,26 +700,14 @@ class CommandHandler
* responding to.
* @param [in] aData the data for the response.
*/
template <typename CommandData>
CHIP_ERROR TryAddResponseData(const ConcreteCommandPath & aRequestCommandPath, const CommandData & aData)
CHIP_ERROR TryAddResponseDataViaEncoder(const ConcreteCommandPath & aRequestCommandPath, CommandId commandId,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Again, why the ViaEncoder suffix?

// that genuinely require templating, minimizes duplicate compiled code.
ConcreteCommandPath responseCommandPath = { aRequestCommandPath.mEndpointId, aRequestCommandPath.mClusterId,
CommandData::GetCommandId() };
ConcreteCommandPath responseCommandPath = { aRequestCommandPath.mEndpointId, aRequestCommandPath.mClusterId, commandId };
ReturnErrorOnFailure(TryAddResponseDataPreEncode(aRequestCommandPath, responseCommandPath));
TLV::TLVWriter * writer = GetCommandDataIBTLVWriter();
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since this stuff is no longer templated:

  1. We no longer need this fine-grained slicing into things that do or do not depend on the now-nonexistent template argument.
  2. We do not need this thing in the header. It shouldn't be.

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.

6 participants