Author: Angrim
Date: 12:26:05 03/29/03
Go up one level in this thread
On March 29, 2003 at 12:02:45, Sune Fischer wrote: >On March 29, 2003 at 11:48:25, Filip Tvrzsky wrote: >>>>The assembly code used to be in x86.s in Crafty. >>> >>>thanks. >>>I get a lot of errors when compiling it: >>> >>>$ gcc *.s >>>X86.s: Assembler messages: >>>X86.s:4: Error: bad or irreducible absolute expression >>>X86.s:30: Error: bad or irreducible absolute expression >>>X86.s:45: Error: bad or irreducible absolute expression >>>X86.s:63: Error: bad or irreducible absolute expression >>>X86.s:122: Error: bad or irreducible absolute expression >>>X86.s:154: Error: bad or irreducible absolute expression >>>X86.s:182: Error: bad or irreducible absolute expression >>>X86.s:234: Error: bad or irreducible absolute expression >>>X86.s:266: Error: bad or irreducible absolute expression >>>X86.s:301: Error: bad or irreducible absolute expression >>>X86.s:347: Error: bad or irreducible absolute expression >>>X86.s:384: Error: bad or irreducible absolute expression >>>X86.s:456: Error: bad or irreducible absolute expression >>>X86.s:492: Error: bad or irreducible absolute expression >>>X86.s:516: Error: bad or irreducible absolute expression >>> >>>No clue what's wrong. >> >>Hi, >>I am neither programming nor Crafty expert though: >>I think that X86.s is not C code but assembler, so you have to compile with as, >>not gcc. >>And those error messages above are there IMO >>because on the first line of X86.s file you can see such definiton of the >>alignement constant: alignement = ALIGN. The word ALIGN is normally replaced >>during the make process (see MAKEFILE file). If you want compile only X86.s >>file, you have to substitute ALIGN on your own. I don't know which is the >>appropriate value, maybe 4 or 16? >>Filip > >Hmmm, are you saying GCC can't compile assembler? >That sounds very strange to me, a compiler that can't compile? gcc produces assembly language as output, then calls as/gas to convert that into machine code. However it does recognise the .s extension and passes files with that extension to the assembler unchanged. It also recognizes the .S extension, and makes a few changes to such files before passing them to the assembler. If you rename X86.s to X86.S and then do gcc -c -DALIGN=16 X86.S it should work. Does with my system at least. Angrim >Well, in any case I don't know how to write a makefile, so if that's what it >takes then I'm lost. > >But thanks for the info, I'll stick to C++ then :) > >-S.
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.