diff options
author | Jens Arnold <amiconn@rockbox.org> | 2007-02-17 11:19:14 +0000 |
---|---|---|
committer | Jens Arnold <amiconn@rockbox.org> | 2007-02-17 11:19:14 +0000 |
commit | 471d881979e0027737a435fd03efea493ea696f3 (patch) | |
tree | 60b312cb9b4ac4b97e40b9343cab503b825e8fbc /firmware/export/config.h | |
parent | 5dd08e17e9b632f48234cef7c6e360c6666b51e0 (diff) | |
download | rockbox-471d881979e0027737a435fd03efea493ea696f3.tar.gz rockbox-471d881979e0027737a435fd03efea493ea696f3.zip |
ARM targets: Making a few functions non-static allows us to get rid of -ffunction-sections, significantly decreasing binary size and making things run a bit faster because static functions are no longer long_call.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12349 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/export/config.h')
-rw-r--r-- | firmware/export/config.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/firmware/export/config.h b/firmware/export/config.h index 5e127b430d..4d7a3aecdf 100644 --- a/firmware/export/config.h +++ b/firmware/export/config.h | |||
@@ -298,11 +298,20 @@ | |||
298 | #if CONFIG_CPU != SH7034 | 298 | #if CONFIG_CPU != SH7034 |
299 | #define IRAM_STEAL | 299 | #define IRAM_STEAL |
300 | #endif | 300 | #endif |
301 | #if defined(CPU_ARM) | ||
302 | /* GCC quirk workaround: arm-elf-gcc treats static functions as short_call | ||
303 | * when not compiling with -ffunction-sections, even when the function has | ||
304 | * a section attribute. */ | ||
305 | #define STATICIRAM | ||
306 | #else | ||
307 | #define STATICIRAM static | ||
308 | #endif | ||
301 | #else | 309 | #else |
302 | #define ICODE_ATTR | 310 | #define ICODE_ATTR |
303 | #define ICONST_ATTR | 311 | #define ICONST_ATTR |
304 | #define IDATA_ATTR | 312 | #define IDATA_ATTR |
305 | #define IBSS_ATTR | 313 | #define IBSS_ATTR |
314 | #define STATICIRAM static | ||
306 | #endif | 315 | #endif |
307 | 316 | ||
308 | #ifndef IRAM_LCDFRAMEBUFFER | 317 | #ifndef IRAM_LCDFRAMEBUFFER |