delorie.com/archives/browse.cgi | search |
From: | "Tom St Denis" <tomstdenis AT yahoo DOT com> |
Newsgroups: | comp.os.msdos.djgpp |
References: | <5BF60CD649EDD411A04600B0D049F53A544468 AT hydmail02 DOT hyd DOT wilco-int DOT com> |
Subject: | Re: Accessing registers from C |
Lines: | 35 |
X-Priority: | 3 |
X-MSMail-Priority: | Normal |
X-Newsreader: | Microsoft Outlook Express 6.00.2462.0000 |
X-MimeOLE: | Produced By Microsoft MimeOLE V6.00.2462.0000 |
Message-ID: | <0XY%6.75909$Mf5.20934530@news3.rdc1.on.home.com> |
Date: | Mon, 02 Jul 2001 11:30:04 GMT |
NNTP-Posting-Host: | 24.112.8.23 |
X-Complaints-To: | abuse AT home DOT net |
X-Trace: | news3.rdc1.on.home.com 994073404 24.112.8.23 (Mon, 02 Jul 2001 04:30:04 PDT) |
NNTP-Posting-Date: | Mon, 02 Jul 2001 04:30:04 PDT |
Organization: | Excite AT Home - The Leader in Broadband http://home.com/faster |
To: | djgpp AT delorie DOT com |
DJ-Gateway: | from newsgroup comp.os.msdos.djgpp |
Reply-To: | djgpp AT delorie DOT com |
"Prashant Ramachandra" <rprash AT wilco-int DOT com> wrote in message news:5BF60CD649EDD411A04600B0D049F53A544468 AT hydmail02 DOT hyd DOT wilco-int DOT com... > On Monday, July 02, 2001 9:03 AM, Tom St Denis [SMTP:tomstdenis AT yahoo DOT com] > wrote: > | > | > Everytime you use the variable "eax", you're actually accessing > | > or > | modifying > | > the eax register itself. > | > | Perhaps, and by doing so you take away chances for GCC to optimize > | the code. > > Yes, but it's useful in certain cases. I posted some code to check the CPU > type back in 1998. That's the simplest use I can think of. You might want to > see that. And the linux kernel uses lots of this, too. Do you think they > weren't concerned about optimizing ther kernel code? > > | You might as well not write in C then. > > You won't be using this in every function. So this doesn't justify anything. Typically unless your function is an inline [say like a fixed point multiplication, etc] writting asm statements in C is a bad idea. It leads to poor messy code that is hard to maintain. Ideally all of your .C code is C code and you just have #ifdefs to excluded functions for which you have assembler equivalents. Tom
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |