diff options
author | Andree Buschmann <AndreeBuschmann@t-online.de> | 2011-08-13 16:41:14 +0000 |
---|---|---|
committer | Andree Buschmann <AndreeBuschmann@t-online.de> | 2011-08-13 16:41:14 +0000 |
commit | a1145a1d040dd52b2b5d0e7fe965b6507475bbe2 (patch) | |
tree | 988f845d688974dd7db1950243ef09cc39ed443c /apps/codecs/libgme/kss_emu.h | |
parent | 724a2d2514578297a7fe21dc4c17a7b51a25758d (diff) | |
download | rockbox-a1145a1d040dd52b2b5d0e7fe965b6507475bbe2.tar.gz rockbox-a1145a1d040dd52b2b5d0e7fe965b6507475bbe2.zip |
Remove all IRAM attributes from libGME to be able to restart the IRAM optimization on a clean code base. As first step move the sample buffers to IRAM which results in a 1-5% speedup for all codecs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30284 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/codecs/libgme/kss_emu.h')
-rw-r--r-- | apps/codecs/libgme/kss_emu.h | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/apps/codecs/libgme/kss_emu.h b/apps/codecs/libgme/kss_emu.h index 646b18ea35..43df964fcc 100644 --- a/apps/codecs/libgme/kss_emu.h +++ b/apps/codecs/libgme/kss_emu.h | |||
@@ -155,7 +155,7 @@ blargg_err_t Kss_start_track( struct Kss_Emu* this, int track ); | |||
155 | 155 | ||
156 | // Generate 'count' samples info 'buf'. Output is in stereo. Any emulation | 156 | // Generate 'count' samples info 'buf'. Output is in stereo. Any emulation |
157 | // errors set warning string, and major errors also end track. | 157 | // errors set warning string, and major errors also end track. |
158 | blargg_err_t Kss_play( struct Kss_Emu* this, long count, sample_t* buf ) ICODE_ATTR; | 158 | blargg_err_t Kss_play( struct Kss_Emu* this, long count, sample_t* buf ); |
159 | 159 | ||
160 | // Track status/control | 160 | // Track status/control |
161 | 161 | ||
@@ -210,13 +210,13 @@ static inline void Sound_set_gain( struct Kss_Emu* this, int g ) | |||
210 | } | 210 | } |
211 | 211 | ||
212 | // Emulation (You shouldn't touch these | 212 | // Emulation (You shouldn't touch these |
213 | void cpu_write( struct Kss_Emu* this, kss_addr_t, int ) ICODE_ATTR; | 213 | void cpu_write( struct Kss_Emu* this, kss_addr_t, int ); |
214 | int cpu_in( struct Kss_Emu* this, kss_time_t, kss_addr_t ) ICODE_ATTR; | 214 | int cpu_in( struct Kss_Emu* this, kss_time_t, kss_addr_t ); |
215 | void cpu_out( struct Kss_Emu* this, kss_time_t, kss_addr_t, int ) ICODE_ATTR; | 215 | void cpu_out( struct Kss_Emu* this, kss_time_t, kss_addr_t, int ); |
216 | 216 | ||
217 | void cpu_write_( struct Kss_Emu* this, kss_addr_t addr, int data ) ICODE_ATTR; | 217 | void cpu_write_( struct Kss_Emu* this, kss_addr_t addr, int data ); |
218 | bool run_cpu( struct Kss_Emu* this, kss_time_t end ) ICODE_ATTR; | 218 | bool run_cpu( struct Kss_Emu* this, kss_time_t end ); |
219 | void jsr( struct Kss_Emu* this, byte const addr [] ) ICODE_ATTR; | 219 | void jsr( struct Kss_Emu* this, byte const addr [] ); |
220 | 220 | ||
221 | static inline int sms_psg_enabled( struct Kss_Emu* this ) { return this->chip_flags & sms_psg_flag; } | 221 | static inline int sms_psg_enabled( struct Kss_Emu* this ) { return this->chip_flags & sms_psg_flag; } |
222 | static inline int sms_fm_enabled( struct Kss_Emu* this ) { return this->chip_flags & sms_fm_flag; } | 222 | static inline int sms_fm_enabled( struct Kss_Emu* this ) { return this->chip_flags & sms_fm_flag; } |