[rtems commit] arm/lpc24xx (lpc24xx variants) Add per-section compilation and linking support.
Joel Sherrill
joel at rtems.org
Fri Mar 11 20:14:54 UTC 2016
Module: rtems
Branch: master
Commit: 55159ee96e48e18f7e6a238280a5a25c6bb51959
Changeset: http://git.rtems.org/rtems/commit/?id=55159ee96e48e18f7e6a238280a5a25c6bb51959
Author: Joel Sherrill <joel at rtems.org>
Date: Thu Mar 10 11:13:29 2016 -0600
arm/lpc24xx (lpc24xx variants) Add per-section compilation and linking support.
updates #2577.
For the lpc2362 BSP variant:
The size of the sample executables without this option were:
text data bss dec he filename
65110 1820 31008 97938 17e92 ticker.exe
21906 1088 31712 54706 d5b2 minimum.exe
78376 1908 30912 111196 1b25c nsecs.exe
63254 1820 31008 96082 17752 base_sp.exe
65106 1844 30976 97926 17e86 unlimited.exe
75538 1796 31040 108374 1a756 hello.exe
The size of the sample executables with this option were:
text data bss dec hex filename
61042 1808 31008 93858 16ea2 ticker.exe
14864 288 32512 47664 ba30 minimum.exe
74632 1896 30912 107440 1a3b0 nsecs.exe
59070 1808 31008 91886 166ee base_sp.exe
60030 1816 31008 92854 16ab6 unlimited.exe
70122 1744 31072 102938 1921a hello.exe
For the lpc23xx_tli800 BSP variant:
The size of the sample executables without this option were:
text data bss dec hex filename
65110 1820 31008 97938 17e92 ticker.exe
21906 1088 31712 54706 d5b2 minimum.exe
78376 1908 30912 111196 1b25c nsecs.exe
63254 1820 31008 96082 17752 base_sp.exe
65106 1844 30976 97926 17e86 unlimited.exe
75538 1796 31040 108374 1a756 hello.exe
For the lpc23xx_tli800 BSP variant:
text data bss dec hex filename
61042 1808 31008 93858 16ea2 ticker.exe
14864 288 32512 47664 ba30 minimum.exe
74632 1896 30912 107440 1a3b0 nsecs.exe
59070 1808 31008 91886 166ee base_sp.exe
60030 1816 31008 92854 16ab6 unlimited.exe
70122 1744 31072 102938 1921a hello.exe
For the lpc24xx_ea BSP variant:
The size of the sample executables without this option were:
text data bss dec hex filename
64458 1724 33553760 33619942 200ffe6 ticker.exe
21402 1088 33597472 33619962 200fffa minimum.exe
585614 2004 33032320 33619938 200ffe2 cxx_iostream.exe
372001 5808 33242144 33619953 200fff1 fileio.exe
288766 12616 33318560 33619942 200ffe6 pppd.exe
135302 2360 33482272 33619934 200ffde capture.exe
77732 1812 33540416 33619960 200fff8 nsecs.exe
126250 2100 33491584 33619934 200ffde paranoia.exe
136950 1756 33481248 33619954 200fff2 cdtest.exe
62602 1724 33555616 33619942 200ffe6 base_sp.exe
64462 1748 33553728 33619938 200ffe2 unlimited.exe
74890 1700 33543360 33619950 200ffee hello.exe
176902 6500 33436544 33619946 200ffea loopback.exe
The size of the sample executables with this option were:
text data bss dec hex filename
60234 1712 33557984 33619930 200ffda ticker.exe
14360 288 33605312 33619960 200fff8 minimum.exe
368478 1976 33249504 33619958 200fff6 cxx_iostream.exe
362089 5796 33252064 33619949 200ffed fileio.exe
268310 12464 33339168 33619942 200ffe6 pppd.exe
129382 2340 33488224 33619946 200ffea capture.exe
73824 1800 33544320 33619944 200ffe8 nsecs.exe
122250 2088 33495616 33619954 200fff2 paranoia.exe
130694 1744 33487520 33619958 200fff6 cdtest.exe
58262 1712 33559968 33619942 200ffe6 base_sp.exe
59222 1720 33559008 33619950 200ffee unlimited.exe
69314 1648 33548992 33619954 200fff2 hello.exe
164318 6400 33449216 33619934 200ffde loopback.exe
For the lpc24xx_ncs_ram BSP variant:
The size of the sample executables without this option were:
text data bss dec hex filename
64606 1820 8387712 8454138 80fffa ticker.exe
21402 1088 8431648 8454138 80fffa minimum.exe
585766 2100 7866240 8454106 80ffda cxx_iostream.exe
372158 5904 8076064 8454126 80ffee fileio.exe
288918 12712 8152480 8454110 80ffde pppd.exe
135446 2456 8316224 8454126 80ffee capture.exe
77880 1908 8374336 8454124 80ffec nsecs.exe
126402 2196 8325536 8454134 80fff6 paranoia.exe
137102 1852 8315168 8454122 80ffea cdtest.exe
62750 1820 8389568 8454138 80fffa base_sp.exe
64610 1844 8387680 8454134 80fff6 unlimited.exe
75042 1796 8377280 8454118 80ffe6 hello.exe
177046 6596 8270496 8454138 80fffa loopback.exe
The size of the sample executables with this option were:
text data bss dec hex filename
60538 1808 8391776 8454122 80ffea ticker.exe
14360 288 8439488 8454136 80fff8 minimum.exe
368782 2072 8083264 8454118 80ffe6 cxx_iostream.exe
362398 5892 8085824 8454114 80ffe2 fileio.exe
268614 12560 8172960 8454134 80fff6 pppd.exe
129686 2436 8322016 8454138 80fffa capture.exe
74128 1896 8378080 8454104 80ffd8 nsecs.exe
122554 2184 8329376 8454114 80ffe2 paranoia.exe
130998 1840 8321280 8454118 80ffe6 cdtest.exe
58566 1808 8393760 8454134 80fff6 base_sp.exe
59526 1816 8392768 8454110 80ffde unlimited.exe
69618 1744 8382752 8454114 80ffe2 hello.exe
164622 6496 8283008 8454126 80ffee loopback.exe
For the lpc24xx_ncs_rom_ext BSP variant:
The size of the sample executables without this option were:
text data bss dec hex filename
64810 1820 4194912 4261542 4106a6 ticker.exe
21606 1088 4238848 4261542 4106a6 minimum.exe
585970 2100 3673472 4261542 4106a6 cxx_iostream.exe
372366 5904 3883264 4261534 41069e fileio.exe
289122 12712 3959712 4261546 4106aa pppd.exe
135650 2456 4123424 4261530 41069a capture.exe
78084 1908 4181536 4261528 410698 nsecs.exe
126606 2196 4132736 4261538 4106a2 paranoia.exe
137306 1852 4122368 4261526 410696 cdtest.exe
62954 1820 4196768 4261542 4106a6 base_sp.exe
64814 1844 4194880 4261538 4106a2 unlimited.exe
75246 1796 4184480 4261522 410692 hello.exe
177250 6596 4077696 4261542 4106a6 loopback.exe
The size of the sample executables with this option were:
text data bss dec hex filename
60742 1808 4198976 4261526 410696 ticker.exe
14564 288 4246688 4261540 4106a4 minimum.exe
368986 2072 3890464 4261522 410692 cxx_iostream.exe
362606 5892 3893024 4261522 410692 fileio.exe
268818 12560 3980160 4261538 4106a2 pppd.exe
129890 2436 4129216 4261542 4106a6 capture.exe
74332 1896 4185312 4261540 4106a4 nsecs.exe
122758 2184 4136576 4261518 41068e paranoia.exe
131202 1840 4128480 4261522 410692 cdtest.exe
58770 1808 4200960 4261538 4106a2 base_sp.exe
59730 1816 4200000 4261546 4106aa unlimited.exe
69822 1744 4189952 4261518 41068e hello.exe
164826 6496 4090208 4261530 41069a loopback.exe
For the lpc24xx_ncs_rom_int BSP variant:
The size of the sample executables without this option were:
text data bss dec hex filename
64746 1820 4226400 4292966 418166 ticker.exe
21542 1088 4227104 4249734 40d886 minimum.exe
372302 5904 4222336 4600542 4632de fileio.exe
289058 12712 4215808 4517578 44eeca pppd.exe
135586 2456 4225792 4363834 42963a capture.exe
78020 1908 4226304 4306232 41b538 nsecs.exe
126542 2196 4226016 4354754 4272c2 paranoia.exe
137242 1852 4226400 4365494 429cb6 cdtest.exe
62890 1820 4226400 4291110 417a26 base_sp.exe
64750 1844 4226368 4292962 418162 unlimited.exe
75182 1796 4226432 4303410 41aa32 hello.exe
177186 6596 4221920 4405702 4339c6 loopback.exe
The size of the sample executables with this option were:
text data bss dec hex filename
60678 1808 4226400 4288886 417176 ticker.exe
14500 288 4227904 4242692 40bd04 minimum.exe
368922 2072 4226176 4597170 4625b2 cxx_iostream.exe
362542 5892 4222368 4590802 460cd2 fileio.exe
268754 12560 4215936 4497250 449f62 pppd.exe
129826 2436 4225792 4358054 427fa6 capture.exe
74268 1896 4226304 4302468 41a684 nsecs.exe
122694 2184 4226016 4350894 4263ae paranoia.exe
131138 1840 4226400 4359378 4284d2 cdtest.exe
58706 1808 4226400 4286914 4169c2 base_sp.exe
59666 1816 4226400 4287882 416d8a unlimited.exe
69758 1744 4226464 4297966 4194ee hello.exe
164762 6496 4222016 4393274 43093a loopback.exe
For the lpc24xx_plx800_ram BSP variant:
The size of the sample executables without this option were:
text data bss dec hex filename
64618 1820 33553504 33619942 200ffe6 ticker.exe
21414 1088 33597440 33619942 200ffe6 minimum.exe
585778 2100 33032064 33619942 200ffe6 cxx_iostream.exe
372173 5904 33241888 33619965 200fffd fileio.exe
288914 12712 33318336 33619962 200fffa pppd.exe
135458 2456 33482048 33619962 200fffa capture.exe
77892 1908 33540160 33619960 200fff8 nsecs.exe
126414 2196 33491328 33619938 200ffe2 paranoia.exe
137114 1852 33480992 33619958 200fff6 cdtest.exe
62762 1820 33555360 33619942 200ffe6 base_sp.exe
64622 1844 33553472 33619938 200ffe2 unlimited.exe
75054 1796 33543104 33619954 200fff2 hello.exe
177058 6596 33436288 33619942 200ffe6 loopback.exe
The size of the sample executables with this option were:
text data bss dec hex filename
60550 1808 33557600 33619958 200fff6 ticker.exe
14372 288 33605280 33619940 200ffe4 minimum.exe
368794 2072 33249088 33619954 200fff2 cxx_iostream.exe
362413 5892 33251648 33619953 200fff1 fileio.exe
268610 12560 33338784 33619954 200fff2 pppd.exe
129698 2436 33487808 33619942 200ffe6 capture.exe
74140 1896 33543904 33619940 200ffe4 nsecs.exe
122566 2184 33495200 33619950 200ffee paranoia.exe
131010 1840 33487104 33619954 200fff2 cdtest.exe
58578 1808 33559552 33619938 200ffe2 base_sp.exe
59538 1816 33558592 33619946 200ffea unlimited.exe
69630 1744 33548576 33619950 200ffee hello.exe
164634 6496 33448832 33619962 200fffa loopback.exe
For the lpc24xx_plx800_rom_int BSP variant:
The size of the sample executables without this option were:
text data bss dec hex filename
64762 1820 33618208 33684790 201fd36 ticker.exe
21558 1088 33618912 33641558 2015456 minimum.exe
372321 5904 33614144 33992369 206aeb1 fileio.exe
289058 12712 33607616 33909386 2056a8a pppd.exe
135602 2456 33617600 33755658 203120a capture.exe
78036 1908 33618112 33698056 2023108 nsecs.exe
126558 2196 33617824 33746578 202ee92 paranoia.exe
137258 1852 33618208 33757318 2031886 cdtest.exe
62906 1820 33618208 33682934 201f5f6 base_sp.exe
64766 1844 33618176 33684786 201fd32 unlimited.exe
75198 1796 33618240 33695234 2022602 hello.exe
177202 6596 33613728 33797526 203b596 loopback.exe
The size of the sample executables with this option were:
text data bss dec hex filename
60694 1808 33618208 33680710 201ed46 ticker.exe
14516 288 33619712 33634516 20138d4 minimum.exe
368938 2072 33617984 33988994 206a182 cxx_iostream.exe
362561 5892 33614176 33982629 20688a5 fileio.exe
268754 12560 33607744 33889058 2051b22 pppd.exe
129842 2436 33617600 33749878 202fb76 capture.exe
74284 1896 33618112 33694292 2022254 nsecs.exe
122710 2184 33617824 33742718 202df7e paranoia.exe
131154 1840 33618208 33751202 20300a2 cdtest.exe
58722 1808 33618208 33678738 201e592 base_sp.exe
59682 1816 33618208 33679706 201e95a unlimited.exe
69774 1744 33618272 33689790 20210be hello.exe
164778 6496 33613824 33785098 203850a loopback.exe
---
c/src/lib/libbsp/arm/lpc24xx/make/custom/lpc24xx.inc | 3 +++
1 file changed, 3 insertions(+)
diff --git a/c/src/lib/libbsp/arm/lpc24xx/make/custom/lpc24xx.inc b/c/src/lib/libbsp/arm/lpc24xx/make/custom/lpc24xx.inc
index 09f46b5..9bcef4b 100644
--- a/c/src/lib/libbsp/arm/lpc24xx/make/custom/lpc24xx.inc
+++ b/c/src/lib/libbsp/arm/lpc24xx/make/custom/lpc24xx.inc
@@ -9,3 +9,6 @@ RTEMS_CPU = arm
CPU_CFLAGS = -mcpu=arm7tdmi-s -mthumb
CFLAGS_OPTIMIZE_V = -Os -g
+CFLAGS_OPTIMIZE_V += -ffunction-sections -fdata-sections
+
+LDFLAGS = -Wl,--gc-sections
More information about the vc
mailing list