ranjith kumar wrote: > Who defines ABI(Application Binary Interface) for a processor?? > Processor or compiler or operating systems??? We work together. > I have "Elsevier-ARM System Developer's Guide _ Designing and > Optimizing System SoftwareleeFrom_1_To_703" book. > In that ABI is not defined. > > So I think compiler defines ABI for a processor. Do you, indeed? It'd be nice, but we don't. > Where can I get ABI for ARM processor?? (defined by GCC incase GCC defines it). Go to http://infocenter.arm.com/help/index.jsp and type ABI into the search box. > Also I have been looking at assembly code of ARM processor produced by gcc. > In that there is a register named 'ip'. > But in arm processor manual register 'ip' is defined. It must be one > of R0 to R15. > How to know register 'ip' = R0 or R1 or R2 ....R15. > Where this kind of information is defined? Page 15 of http://infocenter.arm.com/help/topic/com.arm.doc.ihi0042c/IHI0042C_aapcs.pdf. > There are many versions of Arm. Armv4 , Armv5, Armv6..... > I am using gcc cross compiler(on x86) to produce arm code. > Is there any flag that can be given to gcc which will tell you for > what processor and version it is compiling? Yes. See the gcc architecture-specific documentation. > What is the difference between FRAME POINTER and STACK POINTER on ARM processor? In the doc referened above. Andrew.