delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1998/01/03/20:25:11

From: GAMMELJL AT SLU DOT EDU
Date: Sat, 03 Jan 1998 19:23:11 -0600 (CST)
Subject: Re: code which won't compile with -O2 on
To: djgpp AT delorie DOT com
Message-id: <01IRY8PU5APMBW9MXI@SLU.EDU>
Organization: SAINT LOUIS UNIVERSITY St. Louis, MO
MIME-version: 1.0

     I do not understand what you mean by ri.  I assume that you mean
r1,r2,etc.  So I write the input line:
       : "r0" (z), "r1" (x), "r2" (y)   \
and leave the output line blank ( : \ ).  
     The compilation and running goes ok except the compiler issues
warnings "operand 0 has constraint 0", "operand 1 has constraints 1", etc.
     While the compiler does not recognize ri, it does recognize rm which
seems to be very similar to g.  If I use all g's (not followed by a numeral)
the compiler issues "inconsistent constraints".
     It is quite interesting that you mentioned %%ebx(,%%ecx,4) because
that is exactly what I would like to do, namely, get a register for a 
pointer.  Brennan mentions that immed32(basepointer,indexpointer,indexscale)
and the formula
            address=immediate32+basepointer+indexpointer+indexscale 
go together.
     Now, I suppose ebp can contain a basepointer--can it?  Suppose
immediate32=_array--is it? I also suppose that the (, in the form
_array(,%%ecx,4) implies that basepointer=0.  Here comes the question:
If there were a null pointer so that immediate32=0, and if one could set
basepointer=_array, then maybe (just maybe), one could write
            0(%%ebp,%%ecx,4)
with "ebp" (array) on the input line.  So one would have the x in my
example in a register (ebp). 
     That might really speed up some codes, but is it obvious nonsense?
     All very interesting: my djgpp codes are 33% faster than codes I have
generated heretofore, and about 10% faster than codes generated with pmodew
and the Watcom C/C++ compiler--I am grasping for more and more speed.

- Raw text -


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