1. In fact, armcc and tcc don't store return address in stack. Usually the return address is stored in LR. Of course you can store it in anywhere you like when you write assemble language.
2. You can refer to ARM-THUMB Procedure Call Standard. This book is in your ADS1.2/PDF/specs folder, with name ATPCS.pdf.