From: "Andrew Crabtree" Newsgroups: comp.os.msdos.djgpp Subject: Re: special registers in ASM Date: Wed, 11 Feb 1998 13:19:32 -0800 Organization: Hewlett Packard Lines: 23 Message-ID: <6bt4l8$kn9$1@rosenews.rose.hp.com> References: <01bd371c$3b3ff0a0$b1fcffc2 AT fsl22 DOT novo DOT dk> NNTP-Posting-Host: ros51675cra.rose.hp.com Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk Flemming Stig Larsen wrote in message <01bd371c$3b3ff0a0$b1fcffc2 AT fsl22 DOT novo DOT dk>... >I'm going to translate a loop written in C to ASM, but I need more than 8 >individual 32-bit registers to do it properly Wait for the Merced chip. 128 GP Regs. ;) > I'm only familar with >the 6 standarts(EAX-EDX,ESI,EDI) You can also use EBP if you omit the frame pointer. > Then I read about some special registers in the 386+ ex. DR2, TR5, >CR3. My questions are, can I use them right away?, are they 32bit?, >what are the syntax to use them in DJGPP's AT&T inline-assembler? Did you read the instruction timing for them? THe debug registers are 10x slower than regular registers (also 10x slower than a push or a pop instruction), and CR3 is 20x slower. This is on a Pentium. Also, you can't do anything with them, just move to and from. Rewrite your code to be more register efficient or just push/pop.