From mboxrd@z Thu Jan 1 00:00:00 1970 From: hjl@lucon.org (H.J. Lu) To: ian@cygnus.com (Ian Lance Taylor) Cc: schmid@ltoi.iap.physik.tu-darmstadt.de, egcs@cygnus.com, gas2@cygnus.com Subject: Re: binutils 2.9 is broken on x86 Date: Wed, 08 Apr 1998 11:15:00 -0000 Message-id: References: <199804081805.OAA24674@subrogation.cygnus.com> X-SW-Source: 1998/msg00098.html > > From: hjl@lucon.org (H.J. Lu) > Date: Wed, 8 Apr 1998 11:01:08 -0700 (PDT) > > > These are the testsuite results for egcs-2.91.22 on the > > i386-pc-linux-gnulibc1 system. I had to add --disable-nls to configure > > to compile egcs. What about making --disable-nls a default option for > > the texinfo configure? > > > > Peter Schmid > > > > gcc: > > gcc.sum:FAIL: gcc.c-torture/compile/980329-1.c, -O2 > > /tmp/cca17739.s: Assembler messages: > > /tmp/cca17739.s:75: Error: register does not match opcode suffix > > This is an error which H.J. added to his version of the binutils. It > is not yet in the GNU binutils. > > binutils 2.9 is broken on x86. It silently turns > > incb %di > > into > > incl %edi > > Although my binutils chokes on it, however it didn't generate > bogus opcode. I will make binutils 2.8.1.0.30 to fix it. In > the meantime, please don't go back to old binutils. > > Ian, please don't make 2.9 as is. It turns out my worry comes > true. My x86 patch seems quite useful. > > Although H.J. doesn't mention it, gas has behaved this way for many > years. > > I do not plan to delay the 2.9 release to change this behaviour. The > potential bad consequences of adding errors, and thus failing to > assemble existing code, are serious. Turning `incb %di' into `incl > %edi' will almost always be harmless. I am not sure about it. There is no "incb %di" in Intel x86 instrucntion set. It should be either "incw %di" or "incl %edi". I am not sure if they are the same. In that case, I don't know why egcs emits "incb %di". It doesn't look right. H.J. -- H.J. Lu (hjl@gnu.org)