Message-Id: <199610251521.LAA20404@delorie.com> From: "Troy D. Van Horn" Subject: Re: How to compile Allergo 2.1 under DJGPP 2.01 (gcc 2.7.2.1) ? To: pmo AT fmsc DOT com DOT au Date: Fri, 25 Oct 1996 10:21:36 CDT Cc: trvanhor AT SNOOPY DOT UCollege DOT edu, djgpp AT delorie DOT com In-Reply-To: <54ori0$1e8_002@fmsc.com.au>; from "Peter Monks" at Oct 24, 96 10:45 pm > > On Wed, 23 Oct 1996 13:20:52 +0200 (EET) "Adrian G. Oboroc" wrote: > > > > > >Error message (before and after commenting) is just the same: > >=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= > >gcc -I. -Isrc -Wall -o obj/bank.o -c src/bank.S > >E:\ccbaaaaa: Assembler messages: > >E:\ccbaaaaa:252: Error: register does not match opcode suffix > >E:\ccbaaaaa:269: Error: register does not match opcode suffix > >make.exe: *** [obj/bank.o] Error 1 > >=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= > > I can't get Allegro to compile either (I get exactly the same errors as > above), and I've spent about half an hour looking at the source trying to find > where the mismatched opcodes are (to no avail). > > I compiled with: > > gcc -save-temps -I. -Isrc -Wall -o obj/bank.o -c src/bank.S > > and then looked at the temporary file to see what lines 252 and 269 contained. > They were: > > outb %al, %dx (line 252) and > outl %eax, %dx (line 269) > > Can any AT&T assembler gurus tell me whats wrong with these two lines? Or do > I actually have the wrong lines in the file? There are other 'outb's and > 'outl's in bank.S that don't cause any errors, so I'm not 100% sure I've got > the right lines. > > Thanks in advance, > Peter > > > ---------------------------------------------------------------------- > Peter Monks pmo AT fmsc DOT com DOT au Peter, There isn't anything wrong with those lines as near as I can tell (and you do have the right ones). I just tried it and got the same error messages myself. I think this is a bug in GAS 2.7 because the instruction in line 252 appears a few lines above it and GAS does not generate an error from it. There are two possible solutions that I can see. Either you can replace these outs with .byte 0xXX of the object code of these instructions, or do what I have done and replace as.exe with the one from binutils 2.5.2 until a fixed version of GAS is available. With the older version of GAS this assembles just fine, and I have had no other problems with this setup (though Eli doesn't recommend it). But then again, I havn't tried recompiling all of alegro with it. Troy Van Horn