GCC 3.2.1 - apcs problem (was GCC 3.2.1 arm assembler error )

Ryan Pipkin ryan.pipkin@inet.com
Wed Apr 16 21:36:00 GMT 2003


Follow up.

Upon further investigation what I see is a C++ function calling a C 
function. 
The problem seems to go away when I use the -mno-apcs-frame option.

My question is: What is the difference in register usage between 
apcs-frame and no-apcs-frame?

Is there a problem with apcs frames here, I have some more smaple 
assembly generated.

I am still looking for references to the apcs setup in gcc, but any help 
would be greatly appreciated.


*  Gcc 3.2.1 xscale defaults to -mapcs-frame


With -mno-apcs-frame  option.


_ZN12PciXScaleDevC2Ej:
    @ args = 0, pretend = 0, frame = 0
    @ frame_needed = 0, uses_anonymous_args = 0
    stmfd    sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr}


strncpy:
    @ args = 0, pretend = 0, frame = 0
    @ frame_needed = 0, uses_anonymous_args = 0



---------------------
With -mapcs-frame


_ZN12PciXScaleDevC2Ej:
    @ args = 0, pretend = 0, frame = 4
    @ frame_needed = 1, uses_anonymous_args = 0
    mov    ip, sp
    stmfd    sp!, {r4, r5, r6, r7, r8, r9, sl, fp, ip, lr, pc}


strncpy:
    @ args = 0, pretend = 0, frame = 0
    @ frame_needed = 0, uses_anonymous_args = 0





------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com



More information about the crossgcc mailing list