Related articles |
---|
Request for more info on trampolines holmer@rose.eecs.nwu.edu (1993-07-07) |
Re: Request for more info on trampolines eb@kaleida.com (1993-07-07) |
Re: Request for more info on trampolines max@nic.gac.edu (1993-07-08) |
Re: Request for more info on trampolines pardo@cs.washington.edu (1993-07-08) |
Re: Request for more info on trampolines eb@kaleida.com (1993-07-09) |
Re: Request for more info on trampolines pardo@cs.washington.edu (1993-07-10) |
Re: Request for more info on trampolines chased@rbbb.Eng.Sun.COM (1993-07-16) |
Re: Request for more info on trampolines jfc@athena.mit.edu (1993-07-18) |
Newsgroups: | comp.compilers |
From: | pardo@cs.washington.edu (David Keppel) |
Keywords: | GCC, code, comment |
Organization: | Computer Science & Engineering, U. of Washington, Seattle |
References: | 93-07-026 93-07-030 |
Date: | Thu, 8 Jul 1993 21:23:44 GMT |
>>[Information on "trampoline" code?]
>[Often used to represent closures.]
I know the term from operating systems, where it means (more or less)
code that "bounces" control to where it should go, even when control
can't go there directly.
A standard OS example is code that runs when a signal handler returns.
Control "should" go to the code that was interrupted by the signal, but
the normal return sequence won't restore caller-save registers,
condition codes, and so on. Thus, the signal handler is set up to
"return" to trampoline code that cleans up and then restarts the normal
code.
The GNU CC documentation says that trampolines are described in a paper
`pub/tmb/usenix88-lexic.ps.Z' on `maya.idiap.ch'; I haven't looked at
it.
;-D on ( Tram Po Line Of Reasoning ) Pardo
[I looked at the paper, which is about adding nested functions and hence
closures to C++, doing a little run time code munging to create trampolines
for nested functions. -John]
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.