Mail Archives: djgpp/1996/10/28/06:55:35
From: | deanh AT zip DOT com DOT au (Dean)
|
Newsgroups: | comp.os.msdos.djgpp
|
Subject: | asm opcode speeds
|
Date: | 28 Oct 1996 10:59:15 GMT
|
Organization: | The Zipsters
|
Lines: | 37
|
Message-ID: | <5523m3$ss5@the-fly.zip.com.au>
|
NNTP-Posting-Host: | zap11.zip.com.au
|
To: | djgpp AT delorie DOT com
|
DJ-Gateway: | from newsgroup comp.os.msdos.djgpp
|
Does anyone know where I can get the speeds of different opcodes for assembly.
In particular, I'm wonder how fast my plot_pixel routine is:
void plot_pixel( int x, int y, unsigned char colour, short where ) {
__asm__ ("
movw %3, %%es\n
movl $0xA0000, %%edi\n
movw %1, %%di\n
movw %%di, %%ax\n
shl $8, %%di\n
shl $6, %%ax\n
addw %%ax, %%di\n
addw %0, %%di\n
movb %2, %%al\n
stosb"
:
: "g" (x), "g" (y), "g" (colour), "g" (where)
);
}
P.S. Also, is it faster to put the "stosb" at the end, or replace it
with:
movb %%al, %%es:(%%edi)
P.P.S. do you really need all those \n's at the end of each line. I read
somewhere that you don't.
Thanks in advance,
-----------------------------------------------------------------------------
Dean Harding
deanh AT zip DOT com DOT au
-----------------------------------------------------------------------------
- Raw text -