From: "Meissner, Michael" <[EMAIL PROTECTED]>
To: "Yao qi" <[EMAIL PROTECTED]>
CC: gcc@gcc.gnu.org
Subject: RE: var_args for rs6000 backend
Date: Tue, 6 Sep 2005 14:13:56 -0400
And note Yao qi, that there are different ABIs on the rs6000, each of
which has different conventions (ie, you will need to study the AIX ABI
as well as the System V/eabi ABIs, and possibly other ABIs that are now
used).
First, thanks for you suggestions.
Yes, I found there are at least *three* ABIs in gcc/config/rs6000/rs6000.c,
205 /* ABI enumeration available for subtarget to use. */
206 enum rs6000_abi rs6000_current_abi;
And in gcc/config/rs6000/rs6000.h, I found the defination,
1223 /* Enumeration to give which calling sequence to use. */
1224 enum rs6000_abi {
1225 ABI_NONE,
1226 ABI_AIX, /* IBM's AIX */
1227 ABI_V4, /* System V.4/eabi */
1228 ABI_DARWIN /* Apple's Darwin (OS X kernel) */
1229 };
I just have to concentrate on ABI_V4 if I work on gcc develoment on
powerpc-linux, am I right ?
I have traced cc1 and found DEFAULT_ABI in setup_incoming_varargs() is
ABI_V4.
Best Regards
----------------
Yao Qi
Bejing Institute of Technology
_________________________________________________________________
Dont just search. Find. Check out the new MSN Search!
http://search.msn.click-url.com/go/onm00200636ave/direct/01/