Mail Archives: djgpp/1998/08/20/03:42:31
In article <01J0S6CR6YJM94G7O9 AT SLU DOT EDU> you wrote:
[...]
Just to clear up some of the views, I've looked up the exact meaning
of 'enter' and 'leave' at home (in the TASM reference handbook).
So here it goes:
'enter $xx' is equivalent to
pushl %ebp
subl $xx, %esp
movl %esp, %ebp
and 'leave' (no arguments, at least up to i486) equals
movl %ebp,%esp
popl %ebp
In addition, the TASM reference mentions another form 'enter $xx,
$yy', but that seems to be too confusing to even describe it in a
sensible fashion.
The only reason for the existence of these opcodes seems to be that
they're shorter than the full sequence they substitute (--> save code
prefetch queue size). But on modern processors, (586 and up), with
their increasing emphasis on RISC rather than CISC instructions, they
got out of fashion.
--
Hans-Bernhard Broeker (broeker AT physik DOT rwth-aachen DOT de)
Even if all the snow were burnt, ashes would remain.
- Raw text -