From: Hyman Rosen <hyrosen@mail.com>
Subject: Re: GNAT parameter passing, C-style?
Date: Wed, 31 Dec 2003 12:24:54 -0500
Date: 2003-12-31T12:24:54-05:00 [thread overview]
Message-ID: <1072891494.595791@master.nyc.kbcfp.com> (raw)
In-Reply-To: <tQCIb.1395$x34.387@nwrdny02.gnilink.net>
Frank J. Lhota wrote:
> I go back to my original question: does anyone know of a C compiler which,
> when compiling C (not C++) does not default to the C calling convention
> (i.e. arguments pushed on the stack in reverse order, and popped off by
> calling function) in the absence of any indication of another convention?
Certainly. Here's partial output of such code compiled on a Sun
with the simple invocation 'cc -S g.c'. As you can see, arguments
are passed in registers and processed left-to-right.
main:
save %sp,-104,%sp
.L15:
! File g.c:
! 1 extern int f();
! 2 int main()
! 3 {
! 4 return f(1, 2.0, 3, 4.0);
mov 1,%o0
sethi %hi(.L_cseg0),%l0
or %l0,%lo(.L_cseg0),%l0
ldd [%l0+0],%f2
mov 3,%o3
ldd [%l0+8],%f4
std %f2,[%sp+88]
ld [%sp+88],%o1
ld [%sp+92],%o2
std %f4,[%sp+88]
call f
ldd [%sp+88],%o4
ba .L14
mov %o0,%l0
! block 2
.L14:
mov %l0,%i0
jmp %i7+8
restore
next prev parent reply other threads:[~2003-12-31 17:24 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-12-26 10:37 GNAT parameter passing, C-style? Luke A. Guest
2003-12-26 14:20 ` Marin David Condic
2003-12-26 14:51 ` Hyman Rosen
2003-12-26 15:07 ` Marin David Condic
2003-12-26 15:39 ` Luke A. Guest
2003-12-26 17:03 ` Hyman Rosen
2003-12-26 17:08 ` Luke A. Guest
2003-12-26 17:27 ` Luke A. Guest
2003-12-26 18:21 ` Frank J. Lhota
2003-12-26 19:06 ` Frank J. Lhota
2003-12-31 10:23 ` Keith Thompson
2003-12-31 14:45 ` Frank J. Lhota
2003-12-31 15:05 ` Hyman Rosen
2003-12-31 16:30 ` Frank J. Lhota
2003-12-31 17:24 ` Hyman Rosen [this message]
2003-12-31 19:05 ` Frank J. Lhota
2003-12-31 19:38 ` Hyman Rosen
2003-12-31 20:47 ` Frank J. Lhota
2003-12-31 21:35 ` Hyman Rosen
2004-01-01 2:50 ` Frank J. Lhota
2004-01-01 5:20 ` Luke A. Guest
2004-01-01 16:06 ` Hyman Rosen
2004-01-01 16:32 ` Frank J. Lhota
2004-01-01 16:43 ` Hyman Rosen
2004-01-02 0:24 ` Frank J. Lhota
2004-01-02 4:09 ` Hyman Rosen
2004-01-02 13:29 ` Frank J. Lhota
2004-01-01 5:17 ` Luke A. Guest
2004-01-01 5:09 ` Luke A. Guest
2004-01-02 1:17 ` tmoran
2004-01-01 17:18 ` Jano
2004-01-02 0:25 ` Frank J. Lhota
2004-01-07 6:37 ` Dave Thompson
2004-01-01 3:38 ` Marin David Condic
2004-01-01 5:28 ` Luke A. Guest
2004-01-01 14:17 ` Marin David Condic
2004-01-01 16:20 ` Jeff C,
2004-01-02 13:47 ` Marin David Condic
2004-01-05 21:06 ` Keith Thompson
2004-01-06 3:42 ` Robert I. Eachus
2004-01-06 20:54 ` Keith Thompson
2004-01-06 23:45 ` Robert I. Eachus
2004-01-06 13:46 ` Frank J. Lhota
2003-12-27 14:22 ` Marin David Condic
2003-12-26 17:10 ` Martin Krischik
2003-12-26 19:04 ` Frank J. Lhota
2003-12-26 18:01 ` Georg Bauhaus
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox