Hi Ian thanks for the reply, I had a good look through the ARM-THUMB Procedure Call Standard and it sort of suggests that R7 could be used as a frame pointer. Looked through the GCC docs and found the -fabi option but it appears to apply to C++ code. I am still wondering what makes the decision to use R7 as the frame pointer. If its used because of an ABI standard for the ARM Cortex-M3 CPU how is it specified to GCC? Also if this is the case is there a standard that I could look through? I have looked on the ARM web site but not found it yet. Regards John -- View this message in context: http://www.nabble.com/Register-Usage-tp23279910p23287035.html Sent from the gcc - Help mailing list archive at Nabble.com.