summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRalph Holmes <ralph@ybden.com>2016-01-23 02:59:32 +0000
committerJoel Sherrill <joel@rtems.org>2016-01-22 21:20:42 -0600
commitba945b14d2c47aeda1b8f16cc111c8201945e086 (patch)
tree7a0ce993991f094b5fa091aad363f9e215321cac
parent2db128f82b173f970d196f53d46a77cb6cbbdafb (diff)
downloadrtems-ba945b14d2c47aeda1b8f16cc111c8201945e086.tar.bz2
m68k/gen68360: Add per-section compilation and linking support.
For the main BSP: The size of the sample executables without this option were: text data bss dec hex filename 117616 1728 27312 146656 23ce0 base_sp.exe 108256 1696 26912 136864 216a0 hello.exe 29728 1216 23344 54288 d410 minimum.exe 535168 5632 38800 579600 8d810 fileio.exe 136624 1808 27424 165856 287e0 nsecs.exe 192128 2112 27920 222160 363d0 paranoia.exe 121472 1728 27344 150544 24c10 ticker.exe 120304 1760 30752 152816 254f0 unlimited.exe 859008 21600 34400 915008 df640 cxx_iostream.exe 207536 2320 27488 237344 39f20 cdtest.exe 185136 2224 29136 216496 34db0 capture.exe The size of the sample executables with this option enabled were: text data bss dec hex filename 110384 1696 27248 139328 22040 base_sp.exe 100080 1648 26832 128560 1f630 hello.exe 22496 1184 23296 46976 b780 minimum.exe 519376 5600 38464 563440 898f0 fileio.exe 130432 1776 27360 159568 26f50 nsecs.exe 184448 2064 27856 214368 34560 paranoia.exe 114976 1696 27280 143952 23250 ticker.exe 112448 1712 30672 144832 235c0 unlimited.exe 190368 2256 27136 219760 35a70 cxx_iostream.exe 191312 2176 27408 220896 35ee0 cdtest.exe 175216 2160 29072 206448 32670 capture.exe For the gen68360_040 BSP variant: The size of the sample executables without this option were: text data bss dec hex filename 112624 1712 27328 141664 22960 base_sp.exe 101584 1680 26912 130176 1fc80 hello.exe 29936 1184 23344 54464 d4c0 minimum.exe 530080 5616 38800 574496 8c420 fileio.exe 131552 1792 27424 160768 27400 nsecs.exe 161296 2080 27920 191296 2eb40 paranoia.exe 116400 1712 27344 145456 23830 ticker.exe 115312 1728 30752 147792 24150 unlimited.exe 861952 21488 34384 917824 e0140 cxx_iostream.exe 202336 2128 27472 231936 38a00 cdtest.exe 179968 2208 29136 211312 33970 capture.exe The size of the sample executables with this option enabled were: text data bss dec hex filename 105360 1664 27264 134288 20c90 base_sp.exe 93360 1616 26832 121808 1dbd0 hello.exe 21840 1152 23296 46288 b4d0 minimum.exe 513920 5568 38464 557952 88380 fileio.exe 125312 1760 27360 154432 25b40 nsecs.exe 153632 2048 27856 183536 2ccf0 paranoia.exe 109856 1680 27280 138816 21e40 ticker.exe 107376 1680 30672 139728 221d0 unlimited.exe 185040 2128 27104 214272 34500 cxx_iostream.exe 186032 2064 27376 215472 349b0 cdtest.exe 170016 2144 29072 201232 31210 capture.exe For the pgh360 BSP variant: The size of the sample executables without this option were: text data bss dec hex filename 117424 1728 27312 146464 23c20 base_sp.exe 108064 1696 26912 136672 215e0 hello.exe 29536 1216 23344 54096 d350 minimum.exe 534976 5632 38800 579408 8d750 fileio.exe 136432 1808 27424 165664 28720 nsecs.exe 191936 2112 27920 221968 36310 paranoia.exe 121280 1728 27344 150352 24b50 ticker.exe 120096 1760 30752 152608 25420 unlimited.exe 858816 21600 34400 914816 df580 cxx_iostream.exe 207344 2320 27488 237152 39e60 cdtest.exe 184944 2224 29136 216304 34cf0 capture.exe The size of the sample executables with this option enabled were: text data bss dec hex filename 110176 1696 27248 139120 21f70 base_sp.exe 99888 1648 26832 128368 1f570 hello.exe 22304 1184 23296 46784 b6c0 minimum.exe 519168 5600 38464 563232 89820 fileio.exe 130224 1776 27360 159360 26e80 nsecs.exe 184256 2064 27856 214176 344a0 paranoia.exe 114784 1696 27280 143760 23190 ticker.exe 112256 1712 30672 144640 23500 unlimited.exe 190160 2256 27136 219552 359a0 cxx_iostream.exe 191120 2176 27408 220704 35e20 cdtest.exe 175024 2160 29072 206256 325b0 capture.exe
-rw-r--r--c/src/lib/libbsp/m68k/gen68360/make/custom/gen68360.cfg3
-rw-r--r--c/src/lib/libbsp/m68k/gen68360/make/custom/gen68360_040.cfg3
-rw-r--r--c/src/lib/libbsp/m68k/gen68360/make/custom/pgh360.cfg3
3 files changed, 9 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/m68k/gen68360/make/custom/gen68360.cfg b/c/src/lib/libbsp/m68k/gen68360/make/custom/gen68360.cfg
index d2da2e6f42..e98041f7a1 100644
--- a/c/src/lib/libbsp/m68k/gen68360/make/custom/gen68360.cfg
+++ b/c/src/lib/libbsp/m68k/gen68360/make/custom/gen68360.cfg
@@ -9,3 +9,6 @@ include $(RTEMS_ROOT)/make/custom/default.cfg
CPU_CFLAGS = -mcpu=cpu32
CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
+CFLAGS_OPTIMIZE_V += -ffunction-sections -fdata-sections
+
+LDFLAGS = -Wl,--gc-sections
diff --git a/c/src/lib/libbsp/m68k/gen68360/make/custom/gen68360_040.cfg b/c/src/lib/libbsp/m68k/gen68360/make/custom/gen68360_040.cfg
index b1bf318560..23cf917812 100644
--- a/c/src/lib/libbsp/m68k/gen68360/make/custom/gen68360_040.cfg
+++ b/c/src/lib/libbsp/m68k/gen68360/make/custom/gen68360_040.cfg
@@ -10,3 +10,6 @@ CPU_CFLAGS = -mcpu=68040
include $(RTEMS_ROOT)/make/custom/default.cfg
CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
+CFLAGS_OPTIMIZE_V += -ffunction-sections -fdata-sections
+
+LDFLAGS = -Wl,--gc-sections
diff --git a/c/src/lib/libbsp/m68k/gen68360/make/custom/pgh360.cfg b/c/src/lib/libbsp/m68k/gen68360/make/custom/pgh360.cfg
index c0b34093dd..a9f7508314 100644
--- a/c/src/lib/libbsp/m68k/gen68360/make/custom/pgh360.cfg
+++ b/c/src/lib/libbsp/m68k/gen68360/make/custom/pgh360.cfg
@@ -9,3 +9,6 @@ include $(RTEMS_ROOT)/make/custom/default.cfg
CPU_CFLAGS = -mcpu32
CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
+CFLAGS_OPTIMIZE_V += -ffunction-sections -fdata-sections
+
+LDFLAGS = -Wl,--gc-sections