Message-ID: X-Mailer: XFMail 1.3 [p0] on Linux X-Priority: 3 (Normal) Content-Type: text/plain; charset=iso-8859-1 MIME-Version: 1.0 In-Reply-To: X-no-Archive: yes Return-Read-To: markus DOT oberhumer AT jk DOT uni-linz DOT ac DOT at Return-Received-To: markus DOT oberhumer AT jk DOT uni-linz DOT ac DOT at Date: Thu, 09 Sep 1999 21:45:37 +0200 (CEST) From: "Markus F.X.J. Oberhumer" To: djgpp-workers AT delorie DOT com Subject: RE: gcc-2.95 Cc: dj AT delorie DOT com Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id PAA06259 Reply-To: djgpp-workers AT delorie DOT com X-Mailing-List: djgpp-workers AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk Using `-march=pentium' is supposed to generate code that only runs on Pentiums and above. CPU optimizations (the old `-m486') are now controlled by `-mcpu=pentium'. Probably the best way is to default to `-march=i386 -mcpu=pentium' in the specs, i.e. generate code that runs on all i386 CPUs but optimize for the i586 (this also influences default alignment et. al.). Rebuilding or reconfiguring gcc should not be necessary (unless gcc was compiled with -march=pentium itself). Markus On 09-Sep-1999 pavenis AT lanet DOT lv wrote: > Hi! > > Sorry to say, but we should not mirror out binaries of port of gcc- > 2.95.1. I must rebuild them for target i386-pc-msdosdjgpp > > The problem was that we have found very rare problem when > compiler with options -march=pentium -mcpu=pentium generates code > which doesn't run on i386. It seems to be very rare as it took half a > year to found it (my own software written in C++ is being used on 386 > and never crashed due to similar things) as the same problem was with > port of egcs-1.1.2 > > Andris > > ------------------ assembler code generated by gcc-2.95 > leal -16(%ecx),%ebx > movl $-1,%eax > leal 8(%ebx),%edx > /APP > .byte 0xf0, 0x0f, 0xc1, 0x02 > /NO_APP > cmpl $1,%eax > jne L712 > ------------------------- what I'm getting from objdump > ----------------------- > 4f7: b8 ff ff ff ff movl $0xffffffff,%eax > 4fc: 8d 53 08 leal 0x8(%ebx),%edx > 4ff: f0 0f c1 02 lock xaddl %eax,(%edx) > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > This command is valid for i486++ > 503: 83 f8 01 cmpl $0x1,%eax > 506: 75 34 jne 53c > <_replace__t12basic_string3ZcZt18string_char_traits1ZcZt24__defaul > t_alloc_template2b0i0UlUlPCcUl+0x1e4> > ---- Markus F.X.J. Oberhumer ---- ---- http://wildsau.idv.uni-linz.ac.at/mfx/ ---- ---- 5E CB 5C 85 DE AF 9E BF E9 DA 7E 6A 39 F8 CC 67 ---- 3 WARPS TO URANUS