Related articles |
---|
[4 earlier articles] |
Re: The C Stack in interpreters - why? nmm1@cus.cam.ac.uk (2005-05-14) |
Re: The C Stack in interpreters - why? anton@mips.complang.tuwien.ac.at (2005-05-14) |
Re: The C Stack in interpreters - why? haberg@math.su.se (2005-05-14) |
Re: The C Stack in interpreters - why? nmm1@cus.cam.ac.uk (2005-05-14) |
Re: The C Stack in interpreters - why? Marko.Makela@HUT.FI (Marko =?ISO-8859-1?Q?M=E4kel=E4?=) (2005-05-14) |
Re: The C Stack in interpreters - why? marcov@stack.nl (Marco van de Voort) (2005-05-14) |
Re: The C Stack in interpreters - why? gah@ugcs.caltech.edu (glen herrmannsfeldt) (2005-05-15) |
Re: The C Stack in interpreters - why? gene@abhost.us (Gene Wirchenko) (2005-05-15) |
Re: The C Stack in interpreters - why? nmm1@cus.cam.ac.uk (2005-05-15) |
Re: The C Stack in interpreters - why? gneuner2@comcast.net (George Neuner) (2005-05-16) |
Re: The C Stack in interpreters - why? nmm1@cus.cam.ac.uk (2005-05-16) |
Re: The C Stack in interpreters - why? scooter.phd@gmail.com (scooter.phd@gmail.com) (2005-05-18) |
From: | glen herrmannsfeldt <gah@ugcs.caltech.edu> |
Newsgroups: | comp.compilers |
Date: | 15 May 2005 15:41:44 -0400 |
Organization: | Compilers Central |
References: | 05-05-072 05-05-073 05-05-084 |
Keywords: | C, architecture, comment |
Posted-Date: | 15 May 2005 15:41:44 EDT |
(snip)
> [Are there really systems with a hardware stack that C doesn't use?
> I've never seen one. -John]
How about ESA/390, with the PC and BAKR instructions?
All the compilers I know of use BALR, BASR, or BASSM, and if
they didn't they wouldn't be able to call languages that did.
(For those who don't know ESA/390, the standard OS/390 linkage is a
linked list, logically but not physically a stack.)
-- glen
[Sheesh. The ESA/390 stack is a hack intended for programs in
different protection domains to call each other in a way that's
lighter weight than a full operating system run-program call. All
normal languages still use BASR or, on zSeries BRAS or BRASL. Having
squinted at a bunch of on-line manuals, it appears that you can tell
the C and C++ compilers to do hardware stack calls with a #pragma or
in C++ extern "OS" { int foo(); }. So there. -John]
Return to the
comp.compilers page.
Search the
comp.compilers archives again.