"tmp-divrem_2.s", line 116 : Syntax error ???

Torbjorn Granlund tg at gmplib.org
Tue Jun 2 23:02:33 CEST 2009


Dennis Clarke <dclarke at blastwave.org> writes:

  Assembler:
          "tmp-divrem_2.s", line 116 : Syntax error
          Near line: "    or      %dl, %al"
          "tmp-divrem_2.s", line 211 : Syntax error
          Near line: "    or      %dl, %al"
  cc: assembler failed for tmp-divrem_2.s
  
  I don't see anything wrong with that assembly line which is a simple
  logical or of two registers. Nothing fancy at all.
  
Very odd, this is not exactly recently added instructions, they must be
from the original 8086.

Either the Sun hackers simply broke their assembler, or they somehow
expect their own syntax for these instructions.

I don't have any problems on a opensolaris machine, where the compiler
identifies itself thus:

tray> cc -V
cc: Sun Ceres C 5.10 SunOS_i386 2008/10/22
usage: cc [ options] files.  Use 'cc -flags' for details

Perhaps you could try making their fine compiler generate a byte or
instruction?  Try or-ing memory locations, a[0] |= a[1], where a is
char*.  Look at the generated assembly code, after passing -S to the
compiler.  If the compiler generates a byte "or", can it assembly its
own output?
  
  Not too sure what to do at this point.
  Any thoughts ?
  
Shout at Sun^H^H^HOracle?  :-)  

-- 
Torbjörn


More information about the gmp-bugs mailing list