Mail Archives: djgpp/1998/02/18/15:29:21
From: | "John M. Aldrich" <fighteer AT cs DOT com>
|
Newsgroups: | comp.os.msdos.djgpp
|
Subject: | Re: push %eax, %ebx instead of pusha
|
Date: | Tue, 17 Feb 1998 18:46:19 -0500
|
Organization: | Two pounds of chaos and a pinch of salt.
|
Lines: | 24
|
Message-ID: | <34EA214B.3B96@cs.com>
|
References: | <34E9DE96 DOT 5339 AT bluewin DOT ch>
|
NNTP-Posting-Host: | ppp213.cs.com
|
Mime-Version: | 1.0
|
To: | djgpp AT delorie DOT com
|
DJ-Gateway: | from newsgroup comp.os.msdos.djgpp
|
leger_v AT bluewin DOT ch wrote:
>
> I'm sorry but I don't use the inline assembly.
> So here's my question :
> How could I push not all the registers but only one or two.
> I'd like to use "push %eax, %ebx" but it doesn't work.
> Should I put "pushl" or "pushw". I don't know. (sorry for this silly
> question)
> but please help me thanx.
Issue one push instruction per register that you want to move to the
stack. You must pop them in reverse order once finished. If you are
using gcc's extended inline assembly, you can tell it which registers
you use and gcc will automatically decide if they need to be saved.
--
John M. Aldrich, aka Fighteer I <fighteer AT cs DOT com> UIN# 7406319
-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GCS d- s+:- a-->? C++>$ U@>++$ p>+ L>++ E>++ W++ N++ o+>++ K? w(---)
O- M-- V? PS+ PE Y+ PGP- t+(-) 5- X- R+(++) tv+() b+++ DI++ D++ G>++
e(*)>++++ h!() !r !y+()
------END GEEK CODE BLOCK------
- Raw text -