Index: apps/codecs/libffmpegFLAC/arm.S =================================================================== RCS file: /cvsroot/rockbox/apps/codecs/libffmpegFLAC/arm.S,v retrieving revision 1.2 diff -u -3 -r1.2 arm.S --- apps/codecs/libffmpegFLAC/arm.S 17 Mar 2006 00:31:15 -0000 1.2 +++ apps/codecs/libffmpegFLAC/arm.S 24 Apr 2006 15:54:11 -0000 @@ -16,6 +16,8 @@ * KIND, either express or implied. * ****************************************************************************/ + +#include "config.h" /* The following is an assembler optimised version of the LPC filtering routines needed for FLAC decoding. It is optimised for use with ARM @@ -23,7 +25,7 @@ All LPC filtering up to order 9 is done in specially optimised unrolled loops, while every order above this is handled by a slower default routine. */ - .section .icode,"ax",%progbits + .section ICODE_SECTION,"ax",%progbits .global lpc_decode_arm lpc_decode_arm: stmdb sp!, { r4-r11, lr } Index: firmware/common/memset_a.S =================================================================== RCS file: /cvsroot/rockbox/firmware/common/memset_a.S,v retrieving revision 1.10 diff -u -3 -r1.10 memset_a.S --- firmware/common/memset_a.S 5 Apr 2006 15:41:07 -0000 1.10 +++ firmware/common/memset_a.S 24 Apr 2006 15:54:16 -0000 @@ -19,9 +19,9 @@ #include "config.h" #ifdef CPU_ARM - .section .icode,"ax",%progbits + .section ICODE_SECTION,"ax",%progbits #else - .section .icode,"ax",@progbits + .section ICODE_SECTION,"ax",@progbits #endif .align 2 Index: firmware/export/config.h =================================================================== RCS file: /cvsroot/rockbox/firmware/export/config.h,v retrieving revision 1.66 diff -u -3 -r1.66 config.h --- firmware/export/config.h 11 Apr 2006 10:37:37 -0000 1.66 +++ firmware/export/config.h 24 Apr 2006 15:54:16 -0000 @@ -214,16 +214,24 @@ #if !defined(SIMULATOR) && /* Not for simulators */ \ (((CONFIG_CPU == SH7034) && !defined(PLUGIN)) || /* SH1 archos: core only */ \ defined(CPU_COLDFIRE) || /* Coldfire: core, plugins, codecs */ \ - (CONFIG_CPU == PP5020) || /* iPod: core, plugins, codecs */ \ (CONFIG_CPU == PP5002) || /* iPod: core, plugins, codecs */ \ (CONFIG_CPU == TCC730)) /* CalmRISC16: core, (plugins, codecs) */ #define ICODE_ATTR __attribute__ ((section(".icode"))) +#define ICODE_SECTION .icode +#define ICONST_ATTR __attribute__ ((section(".irodata"))) +#define IDATA_ATTR __attribute__ ((section(".idata"))) +#define IBSS_ATTR __attribute__ ((section(".ibss"))) +#define USE_IRAM +#elif (CONFIG_CPU == PP5020) /* Data only for the PP502x iPods */ +#define ICODE_ATTR +#define ICODE_SECTION .text #define ICONST_ATTR __attribute__ ((section(".irodata"))) #define IDATA_ATTR __attribute__ ((section(".idata"))) #define IBSS_ATTR __attribute__ ((section(".ibss"))) #define USE_IRAM #else #define ICODE_ATTR +#define ICODE_SECTION .text #define ICONST_ATTR #define IDATA_ATTR #define IBSS_ATTR Index: tools/configure =================================================================== RCS file: /cvsroot/rockbox/tools/configure,v retrieving revision 1.189 diff -u -3 -r1.189 configure --- tools/configure 3 Apr 2006 21:47:18 -0000 1.189 +++ tools/configure 24 Apr 2006 15:54:18 -0000 @@ -210,6 +210,13 @@ arm7tdmicc () { prefixtools arm-elf- + GCCOPTS="$CCOPTS -mcpu=arm7tdmi" + GCCOPTIMIZE="-fomit-frame-pointer" + endian="little" +} + +arm7tdmicclong () { + prefixtools arm-elf- GCCOPTS="$CCOPTS -mcpu=arm7tdmi -ffunction-sections -mlong-calls" GCCOPTIMIZE="-fomit-frame-pointer" endian="little" @@ -782,7 +789,7 @@ archos="ipod3g" target="-DIPOD_3G" memory=32 # always - arm7tdmicc + arm7tdmicclong tool="$rootdir/tools/scramble -add=ip3g" bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" bmp2rb_native="$rootdir/tools/bmp2rb -f 6"