This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
PowerPC GNU Compiler question
- From: "Gafencu, Gheorghe-Costica" <Gheorghe-Costica dot Gafencu at Honeywell dot com>
- To: help-gcc at gnu dot org
- Date: Wed, 27 Mar 2002 10:20:18 -0700
- Subject: PowerPC GNU Compiler question
Hello!
I try for some time to find a documentation for gcc compiler, and I couldn't do it so far. There is an interface
convention for C style functions interfaced for assembly code for powerpc processors. For example, a C method call like
that:
class CPU
{
public:
static void CDECL i2c_initialize( bool enable);
}
has an entry point into another file, where the assembly code is developed, like that:
.global i2c_initialize__3CPUb
.type i2c_initialize__3CPUb,@function
i2c_initialize__3CPUb:
//assembly code
......
blr //return
The two files are compiled separately, and they are linked together. The document "SYSTEM V APPLICATION BINARY INTERFACE
PowerPC Processor Supplement", states how this processor interface should work, from the point of view of the processor,
but doesn't give any indication on the interface of this method accordingly to any compiler, since this information
seems to be compiler dependent.
What I didn't find is a description of the interface for gnu compiler. I know that i2c_initialize_3CPUb means the method
i2c_initialize of the class CPU, with a boolean as parameter. If instead of "b" I wanted an integer as parameter, it was
an "i" instead.
But I don't know what are the specific interfaces for many other base types, or pointers, or even derived objects.
Could you help me telling me where I could find this kind of information, for PowerPC gnu?
Thanks,
***********************************************************
Gil Gafencu,
Staff Software Engineer,
Honeywell International,
23500, W. 105th Street, Mailstop 150,
Olathe, Kansas, 66061
tel. (913)-712-2082
mailto: Gheorghe-Costica.Gafencu@Honeywell.com
***********************************************************