Mail Archives: djgpp/1999/05/12/18:20:27.1
From: | Chuming <nchuming AT magix DOT com DOT sg>
|
Newsgroups: | comp.os.msdos.djgpp
|
Subject: | problem with extended inline asm
|
Date: | Wed, 12 May 1999 17:29:42 +0800
|
Organization: | ZeroSoft
|
Lines: | 33
|
Message-ID: | <37394A06.BA8BBA94@magix.com.sg>
|
NNTP-Posting-Host: | ad130-110.magix.com.sg
|
Mime-Version: | 1.0
|
X-Mailer: | Mozilla 4.51 [en] (Win98; I)
|
X-Accept-Language: | en,zh,zh-CN,zh-TW
|
To: | djgpp AT delorie DOT com
|
DJ-Gateway: | from newsgroup comp.os.msdos.djgpp
|
Reply-To: | djgpp AT delorie DOT com
|
Hi there, can anyone help me with the following problems:
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?
eg:
__asm__ __volatile__
("
/* asm statements*/
"
:
: "g" (x1), "g" (x2), "g" (x3)... until more than 10 inputs
: "edi","eax","ecx","ebx","memory"
);
2) Is it possible to access C local variables in inline asm?
eg. when we're in a function...
(void) func(int x,int y )
{
int z;
__asm__ __volatile__
("
/* can we do something like in intel asm...*/
/* "mov [z],100" or "mov [x],255" etc...*/
"
);
}
Thanx in advance!!
- Raw text -