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

[YAML] Add 'saveAs' support for CHAR_STRING and OCTET_STRING #13541

Conversation

vivien-apple
Copy link
Contributor

Problem

saveAs keyword does not work for OCTET_STRING and CHAR_STRING

Change overview

  • Add saveAs support for both chip-tool and darwin
  • Update generated code

Testing

I have added some tests to TestSaveAs.yaml

@github-actions
Copy link

github-actions bot commented Jan 13, 2022

PR #13541: Size comparison from 2d6d1a3 to 1925c32

Increases (1 build for linux)
platform target config section 2d6d1a3 1925c32 change % change
linux chip-tool-ipv6only arm64 (read only) 8018628 8027460 8832 0.1
(read/write) 370241 370401 160 0.0
.got 64472 64632 160 0.2
.rodata 417772 418556 784 0.2
.text 6812964 6820532 7568 0.1
Full report (32 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 2d6d1a3 1925c32 change % change
efr32 lighting-app BRD4161A (read only) 831392 831392 0 0.0
(read/write) 127612 127612 0 0.0
.bss 125732 125732 0 0.0
.data 1880 1880 0 0.0
.text 831384 831384 0 0.0
BRD4161A+rpc (read only) 818772 818772 0 0.0
(read/write) 144272 144272 0 0.0
.bss 142292 142292 0 0.0
.data 1980 1980 0 0.0
.text 818764 818764 0 0.0
window-app BRD4161A (read only) 805272 805272 0 0.0
(read/write) 126320 126320 0 0.0
.bss 124480 124480 0 0.0
.data 1836 1836 0 0.0
.text 805264 805264 0 0.0
esp32 all-clusters-app c3devkit (read only) 908520 908520 0 0.0
(read/write) 1316498 1316498 0 0.0
.dram0.bss 70504 70504 0 0.0
.dram0.data 14284 14284 0 0.0
.flash.rodata 178216 178216 0 0.0
.flash.text 908520 908520 0 0.0
.iram0.text 62056 62056 0 0.0
m5stack (read only) 957299 957299 0 0.0
(read/write) 448664 448664 0 0.0
.dram0.bss 74976 74976 0 0.0
.dram0.data 34064 34064 0 0.0
.flash.rodata 207496 207496 0 0.0
.flash.text 951915 951915 0 0.0
.iram0.text 123399 123399 0 0.0
k32w light k32w061+release (read/write) 657752 657752 0 0.0
.bss 77136 77136 0 0.0
.data 1852 1852 0 0.0
.text 572964 572964 0 0.0
lock k32w061+release (read/write) 661532 661532 0 0.0
.bss 77432 77432 0 0.0
.data 1872 1872 0 0.0
.text 576428 576428 0 0.0
linux chip-tool-ipv6only arm64 (read only) 8018628 8027460 8832 0.1
(read/write) 370241 370401 160 0.0
.bss 55217 55217 0 0.0
.data 1096 1096 0 0.0
.data.rel.ro 245760 245760 0 0.0
.dynamic 560 560 0 0.0
.got 64472 64632 160 0.2
.init 24 24 0 0.0
.init_array 168 168 0 0.0
.rodata 417772 418556 784 0.2
.text 6812964 6820532 7568 0.1
thermostat-no-ble arm64 (read only) 2040924 2040924 0 0.0
(read/write) 145969 145969 0 0.0
.bss 65089 65089 0 0.0
.data 880 880 0 0.0
.data.rel.ro 73016 73016 0 0.0
.dynamic 560 560 0 0.0
.got 4048 4048 0 0.0
.init 24 24 0 0.0
.init_array 304 304 0 0.0
.rodata 129868 129868 0 0.0
.text 1696464 1696464 0 0.0
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2346416 2346416 0 0.0
.bss 189204 189204 0 0.0
.data 5320 5320 0 0.0
.text 1308992 1308992 0 0.0
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2331240 2331240 0 0.0
.bss 180728 180728 0 0.0
.data 5552 5552 0 0.0
.text 1293840 1293840 0 0.0
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2304464 2304464 0 0.0
.bss 179768 179768 0 0.0
.data 5544 5544 0 0.0
.text 1267064 1267064 0 0.0
pigweed-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 1139712 1139712 0 0.0
.bss 11756 11756 0 0.0
.data 4368 4368 0 0.0
.text 103096 103096 0 0.0
shell CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2054456 2054456 0 0.0
.bss 156876 156876 0 0.0
.data 4864 4864 0 0.0
.text 1017056 1017056 0 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 940303 940303 0 0.0
bss 119596 119596 0 0.0
rodata 108508 108508 0 0.0
text 634620 634620 0 0.0
nrf52840dk_nrf52840+rpc (read/write) 925739 925739 0 0.0
bss 116640 116640 0 0.0
rodata 100960 100960 0 0.0
text 629972 629972 0 0.0
nrf52840dongle_nrf52840 (read/write) 990983 990983 0 0.0
bss 122440 122440 0 0.0
rodata 113264 113264 0 0.0
text 666816 666816 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 850130 850130 0 0.0
bss 116384 116384 0 0.0
rodata 101684 101684 0 0.0
text 551536 551536 0 0.0
lock-app nrf52840dk_nrf52840 (read/write) 912543 912543 0 0.0
bss 118784 118784 0 0.0
rodata 103780 103780 0 0.0
text 612612 612612 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 822614 822614 0 0.0
bss 115600 115600 0 0.0
rodata 97008 97008 0 0.0
text 529568 529568 0 0.0
pigweed-app nrf52840dk_nrf52840 (read/write) 541835 541835 0 0.0
bss 52588 52588 0 0.0
rodata 50104 50104 0 0.0
text 376940 376940 0 0.0
pump-app nrf52840dk_nrf52840 (read/write) 913855 913855 0 0.0
bss 118544 118544 0 0.0
rodata 103996 103996 0 0.0
text 613872 613872 0 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 910655 910655 0 0.0
bss 118572 118572 0 0.0
rodata 103252 103252 0 0.0
text 611368 611368 0 0.0
shell nrf52840dk_nrf52840 (read/write) 798643 798643 0 0.0
bss 109776 109776 0 0.0
rodata 78376 78376 0 0.0
text 533988 533988 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 711462 711462 0 0.0
bss 107664 107664 0 0.0
rodata 72680 72680 0 0.0
text 451668 451668 0 0.0
p6 all-clusters-app default (read/write) 2400616 2400616 0 0.0
.bss 117484 117484 0 0.0
.data 2592 2592 0 0.0
.text 1358880 1358880 0 0.0
light-app default (read/write) 2326152 2326152 0 0.0
.bss 106040 106040 0 0.0
.data 2384 2384 0 0.0
.text 1284416 1284416 0 0.0
lock-app default (read/write) 2298384 2298384 0 0.0
.bss 104920 104920 0 0.0
.data 2344 2344 0 0.0
.text 1256648 1256648 0 0.0
qpg lighting-app qpg6105+debug (read only) 534972 534972 0 0.0
(read/write) 146940 146940 0 0.0
.bss 89336 89336 0 0.0
.data 1008 1008 0 0.0
.text 529652 529652 0 0.0
lock-app qpg6105+debug (read only) 506896 506896 0 0.0
(read/write) 146936 146936 0 0.0
.bss 88472 88472 0 0.0
.data 956 956 0 0.0
.text 501576 501576 0 0.0
persistent-storage-app qpg6105+debug (read only) 106848 106848 0 0.0
(read/write) 146940 146940 0 0.0
.bss 38504 38504 0 0.0
.data 288 288 0 0.0
.text 101528 101528 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 836950 836950 0 0.0
bss 87288 87288 0 0.0
noinit 37160 37160 0 0.0
text 584320 584320 0 0.0

@vivien-apple vivien-apple force-pushed the YAML_SaveAs_OctetString_CharString branch 2 times, most recently from 8dec8c5 to b282051 Compare January 13, 2022 22:29
@github-actions
Copy link

github-actions bot commented Jan 13, 2022

PR #13541: Size comparison from 4c27e98 to b282051

Increases (1 build for linux)
platform target config section 4c27e98 b282051 change % change
linux chip-tool-ipv6only arm64 (read only) 8024884 8033716 8832 0.1
(read/write) 370241 370401 160 0.0
.got 64472 64632 160 0.2
.rodata 417772 418556 784 0.2
.text 6819220 6826788 7568 0.1
Full report (14 builds for efr32, k32w, linux, p6, qpg, telink)
platform target config section 4c27e98 b282051 change % change
efr32 lighting-app BRD4161A (read only) 832820 832820 0 0.0
(read/write) 127628 127628 0 0.0
.bss 125744 125744 0 0.0
.data 1884 1884 0 0.0
.text 832812 832812 0 0.0
BRD4161A+rpc (read only) 820224 820224 0 0.0
(read/write) 144288 144288 0 0.0
.bss 142304 142304 0 0.0
.data 1984 1984 0 0.0
.text 820216 820216 0 0.0
window-app BRD4161A (read only) 805448 805448 0 0.0
(read/write) 126320 126320 0 0.0
.bss 124480 124480 0 0.0
.data 1836 1836 0 0.0
.text 805440 805440 0 0.0
k32w light k32w061+release (read/write) 657944 657944 0 0.0
.bss 77136 77136 0 0.0
.data 1852 1852 0 0.0
.text 573156 573156 0 0.0
lock k32w061+release (read/write) 661660 661660 0 0.0
.bss 77432 77432 0 0.0
.data 1872 1872 0 0.0
.text 576556 576556 0 0.0
linux chip-tool-ipv6only arm64 (read only) 8024884 8033716 8832 0.1
(read/write) 370241 370401 160 0.0
.bss 55217 55217 0 0.0
.data 1096 1096 0 0.0
.data.rel.ro 245760 245760 0 0.0
.dynamic 560 560 0 0.0
.got 64472 64632 160 0.2
.init 24 24 0 0.0
.init_array 168 168 0 0.0
.rodata 417772 418556 784 0.2
.text 6819220 6826788 7568 0.1
thermostat-no-ble arm64 (read only) 2042140 2042140 0 0.0
(read/write) 145969 145969 0 0.0
.bss 65089 65089 0 0.0
.data 880 880 0 0.0
.data.rel.ro 73016 73016 0 0.0
.dynamic 560 560 0 0.0
.got 4048 4048 0 0.0
.init 24 24 0 0.0
.init_array 304 304 0 0.0
.rodata 129868 129868 0 0.0
.text 1697680 1697680 0 0.0
p6 all-clusters-app default (read/write) 2402392 2402392 0 0.0
.bss 117484 117484 0 0.0
.data 2592 2592 0 0.0
.text 1360656 1360656 0 0.0
light-app default (read/write) 2327600 2327600 0 0.0
.bss 106064 106064 0 0.0
.data 2392 2392 0 0.0
.text 1285864 1285864 0 0.0
lock-app default (read/write) 2298512 2298512 0 0.0
.bss 104920 104920 0 0.0
.data 2344 2344 0 0.0
.text 1256776 1256776 0 0.0
qpg lighting-app qpg6105+debug (read only) 562040 562040 0 0.0
(read/write) 146936 146936 0 0.0
.bss 89952 89952 0 0.0
.data 1044 1044 0 0.0
.text 556720 556720 0 0.0
lock-app qpg6105+debug (read only) 515356 515356 0 0.0
(read/write) 146936 146936 0 0.0
.bss 88584 88584 0 0.0
.data 972 972 0 0.0
.text 510036 510036 0 0.0
persistent-storage-app qpg6105+debug (read only) 106848 106848 0 0.0
(read/write) 146940 146940 0 0.0
.bss 38512 38512 0 0.0
.data 288 288 0 0.0
.text 101528 101528 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 838494 838494 0 0.0
bss 87312 87312 0 0.0
noinit 37160 37160 0 0.0
text 585654 585654 0 0.0

@vivien-apple
Copy link
Contributor Author

/rebase

@woody-apple woody-apple force-pushed the YAML_SaveAs_OctetString_CharString branch from b282051 to 1448695 Compare January 13, 2022 23:35
@vivien-apple vivien-apple force-pushed the YAML_SaveAs_OctetString_CharString branch from 2bd3ec2 to af3747b Compare January 14, 2022 09:54
@github-actions
Copy link

github-actions bot commented Jan 14, 2022

PR #13541: Size comparison from 5e61ce9 to af3747b

Increases above 0.2%:

platform target config section 5e61ce9 af3747b change % change
linux chip-tool-ipv6only arm64 .got 64472 64728 256 0.4
.rodata 417788 419196 1408 0.3
Increases (1 build for linux)
platform target config section 5e61ce9 af3747b change % change
linux chip-tool-ipv6only arm64 (read only) 8024820 8038420 13600 0.2
(read/write) 370241 370497 256 0.1
.got 64472 64728 256 0.4
.rodata 417788 419196 1408 0.3
.text 6819140 6830564 11424 0.2
Full report (21 builds for efr32, esp32, k32w, linux, mbed, p6, qpg, telink)
platform target config section 5e61ce9 af3747b change % change
efr32 lighting-app BRD4161A (read only) 832764 832764 0 0.0
(read/write) 127628 127628 0 0.0
.bss 125744 125744 0 0.0
.data 1884 1884 0 0.0
.text 832756 832756 0 0.0
BRD4161A+rpc (read only) 820168 820168 0 0.0
(read/write) 144288 144288 0 0.0
.bss 142304 142304 0 0.0
.data 1984 1984 0 0.0
.text 820160 820160 0 0.0
window-app BRD4161A (read only) 805424 805424 0 0.0
(read/write) 126320 126320 0 0.0
.bss 124480 124480 0 0.0
.data 1836 1836 0 0.0
.text 805416 805416 0 0.0
esp32 all-clusters-app c3devkit (read only) 910034 910034 0 0.0
(read/write) 1316506 1316506 0 0.0
.dram0.bss 70504 70504 0 0.0
.dram0.data 14284 14284 0 0.0
.flash.rodata 178224 178224 0 0.0
.flash.text 910034 910034 0 0.0
.iram0.text 62056 62056 0 0.0
m5stack (read only) 959027 959027 0 0.0
(read/write) 448672 448672 0 0.0
.dram0.bss 74976 74976 0 0.0
.dram0.data 34064 34064 0 0.0
.flash.rodata 207504 207504 0 0.0
.flash.text 953643 953643 0 0.0
.iram0.text 123399 123399 0 0.0
k32w light k32w061+release (read/write) 657920 657920 0 0.0
.bss 77136 77136 0 0.0
.data 1852 1852 0 0.0
.text 573132 573132 0 0.0
lock k32w061+release (read/write) 661604 661604 0 0.0
.bss 77432 77432 0 0.0
.data 1872 1872 0 0.0
.text 576500 576500 0 0.0
linux chip-tool-ipv6only arm64 (read only) 8024820 8038420 13600 0.2
(read/write) 370241 370497 256 0.1
.bss 55217 55217 0 0.0
.data 1096 1096 0 0.0
.data.rel.ro 245760 245760 0 0.0
.dynamic 560 560 0 0.0
.got 64472 64728 256 0.4
.init 24 24 0 0.0
.init_array 168 168 0 0.0
.rodata 417788 419196 1408 0.3
.text 6819140 6830564 11424 0.2
thermostat-no-ble arm64 (read only) 2041980 2041980 0 0.0
(read/write) 145969 145969 0 0.0
.bss 65089 65089 0 0.0
.data 880 880 0 0.0
.data.rel.ro 73016 73016 0 0.0
.dynamic 560 560 0 0.0
.got 4048 4048 0 0.0
.init 24 24 0 0.0
.init_array 304 304 0 0.0
.rodata 129884 129884 0 0.0
.text 1697504 1697504 0 0.0
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2347832 2347832 0 0.0
.bss 189204 189204 0 0.0
.data 5320 5320 0 0.0
.text 1310408 1310408 0 0.0
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2332416 2332416 0 0.0
.bss 180752 180752 0 0.0
.data 5560 5560 0 0.0
.text 1295016 1295016 0 0.0
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2304536 2304536 0 0.0
.bss 179768 179768 0 0.0
.data 5544 5544 0 0.0
.text 1267136 1267136 0 0.0
pigweed-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 1139712 1139712 0 0.0
.bss 11756 11756 0 0.0
.data 4368 4368 0 0.0
.text 103096 103096 0 0.0
shell CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2054464 2054464 0 0.0
.bss 156876 156876 0 0.0
.data 4864 4864 0 0.0
.text 1017064 1017064 0 0.0
p6 all-clusters-app default (read/write) 2402304 2402304 0 0.0
.bss 117484 117484 0 0.0
.data 2592 2592 0 0.0
.text 1360568 1360568 0 0.0
light-app default (read/write) 2327544 2327544 0 0.0
.bss 106064 106064 0 0.0
.data 2392 2392 0 0.0
.text 1285808 1285808 0 0.0
lock-app default (read/write) 2298456 2298456 0 0.0
.bss 104920 104920 0 0.0
.data 2344 2344 0 0.0
.text 1256720 1256720 0 0.0
qpg lighting-app qpg6105+debug (read only) 561976 561976 0 0.0
(read/write) 146936 146936 0 0.0
.bss 89952 89952 0 0.0
.data 1044 1044 0 0.0
.text 556656 556656 0 0.0
lock-app qpg6105+debug (read only) 515292 515292 0 0.0
(read/write) 146936 146936 0 0.0
.bss 88584 88584 0 0.0
.data 972 972 0 0.0
.text 509972 509972 0 0.0
persistent-storage-app qpg6105+debug (read only) 106848 106848 0 0.0
(read/write) 146940 146940 0 0.0
.bss 38512 38512 0 0.0
.data 288 288 0 0.0
.text 101528 101528 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 838462 838462 0 0.0
bss 87312 87312 0 0.0
noinit 37160 37160 0 0.0
text 585618 585618 0 0.0

@vivien-apple vivien-apple merged commit b602b73 into project-chip:master Jan 14, 2022
selissia pushed a commit to selissia/connectedhomeip that referenced this pull request Jan 28, 2022
step0035 pushed a commit to hank820/connectedhomeip that referenced this pull request Feb 8, 2022
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.

4 participants