Fix profiling on coldfire with newer Gcc.
commit7fbf7008c0b65aec9182f30345924b9dfc1dd144
authornls <nls@a1c6a512-1295-4272-9138-f99709370657>
Mon, 27 Dec 2010 09:49:33 +0000 (27 09:49 +0000)
committernls <nls@a1c6a512-1295-4272-9138-f99709370657>
Mon, 27 Dec 2010 09:49:33 +0000 (27 09:49 +0000)
treecc139d0cbc6e5491a0540b0892de027b80fc7093
parentfee9730396f961a71fd75c1dd7f81a391e6b5d38
Fix profiling on coldfire with newer Gcc.
In switch_thread, make the call to profile_thread_stopped from an inline asm block to make sure the sp is pointing to the right place before storing the context. This apparently worked by luck with the old Gcc.
The workaround used for coldfire in the codeclib's __cyg_profile_func_enter does not work with newer gcc, however the workaround isn't needed for those so enable it only for coldfire gcc version < 4.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28908 a1c6a512-1295-4272-9138-f99709370657
apps/codecs/lib/codeclib.c
firmware/thread.c