delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2000/03/10/20:27:49

From: GAMMELJL AT SLU DOT EDU
Date: Fri, 10 Mar 2000 17:59:15 -0600 (CST)
Subject: AMD processors and assembly language
To: DJGPP AT delorie DOT com
Message-id: <01JMVKC89LSI9ASAX4@SLU.EDU>
Organization: SAINT LOUIS UNIVERSITY St. Louis, MO
X-VMS-To: IN%DJGPP AT DELORIE DOT COM
MIME-version: 1.0
Reply-To: djgpp AT delorie DOT com

     I did get work on the machine with an AMD processor and found
(as several had pointed out) that the problem I was having had nothing
to with the AMD chip but rather had to do with the new version of djgpp
(not the latest but the one before the latest) being used on that machine.
Specifically, in addition to the changes which I listed in previous
communications, I had to change lines of assembly language like
              : "eax" 
occurring at the end of a section of assembly language and intended to
inform the assembler that the register eax is used in that section of
assembly language to
              pushl %%eax
              . 
              .
              popl %%eax
that is, the pushing and popping has to be done explicitly and not left
to the assembler to decide whether to push and pop or not.
     Everything works fine after that.  What one learns is that the
AMD processor is faster than what one would expect from the clock speed
(megahertz) provided one does not optimizing and does not use assembly
language.  The executables run much faster when one uses assembly language
and optimization -O2.  In that case, the executables run pretty much
in line with what the clock speed suggests, with the Intel processor
a little faster.

- Raw text -


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