www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1999/05/12/18:59:09

Date: Wed, 12 May 1999 19:00:08 -0400
Message-Id: <199905122300.TAA26624@envy.delorie.com>
From: DJ Delorie <dj AT delorie DOT com>
To: djgpp AT delorie DOT com
In-reply-to: <37394A06.BA8BBA94@magix.com.sg> (message from Chuming on Wed, 12
May 1999 17:29:42 +0800)
Subject: Re: problem with extended inline asm
References: <37394A06 DOT BA8BBA94 AT magix DOT com DOT sg>
Reply-To: djgpp AT delorie DOT com
X-Mailing-List: djgpp AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

> 1) when using extended inline asm in djgpp, is the input registers
> field limited to only 10 operands. Is there any way to get around the
> problem?

If your asm is that complex, you'll probably want to do a separate
assembler file (*.S).  GCC has to pre-fill registers with the
expressions you give (or code memory references) so setting up that
many temporaries reduces the efficiency of the generated code.

Note that in most cases, GCC produces code about as good as hand-coded
assembler, and inline asm is only needed for operations gcc doesn't
understand (like inportb, farptr, or system-level register access).

> 2) Is it possible to access C local variables in inline asm?

See <sys/farptr.h> for examples.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019