Message-ID: <19990521105104.58741@atrey.karlin.mff.cuni.cz> Date: Fri, 21 May 1999 10:51:04 +0200 From: Jan Hubicka To: pgcc AT delorie DOT com Subject: Re: Benchmark PGCC vs EGCS on a K6-2 References: <373F3AA2 DOT A446D611 AT informatik DOT hu-berlin DOT de> <19990519105631 DOT 40676 AT atrey DOT karlin DOT mff DOT cuni DOT cz> <19990519151204 DOT E1552 AT cerebro DOT laendle> <19990520103558 DOT 44750 AT atrey DOT karlin DOT mff DOT cuni DOT cz> <19990520233330 DOT J248 AT cerebro DOT laendle> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.84 In-Reply-To: <19990520233330.J248@cerebro.laendle>; from Marc Lehmann on Thu, May 20, 1999 at 11:33:30PM +0200 Reply-To: pgcc AT delorie DOT com X-Mailing-List: pgcc AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk > On Thu, May 20, 1999 at 10:35:58AM +0200, Jan Hubicka wrote: > > > > K6 seems to have serious problems with decoding speed. I've made new haifa scheduler hooks for > > > > decoding that worked quite well (I have also version for Pentium and PPro available, PPro > > > > version is untested), > > > > On K6 it brought quite large speedups (-10 - 500%, usually about 10%), but changes necesarry > > > > to i386.md are quite large so it would take lots of time to add them into gcc. > > > > > > Well, pgcc is much more open to these kind of patches...! > > > > OK. If you are interested I may try to update it for pgcc next week :) > > Yessir I am! OK... :) So I have to start. Just a simple question. As I remember, the latest pgcc patch is relative to quite old version of egcs (1.1.x times). In the recent week, many of my and John's i386 patches was accepted to egcs, so I believe making changes relative to old pgcc will bring you lots of problems while updating patch for new egcs snapshots. Do you have somewhere pgcc patches updated for this version, so I can do it there? BTW there are also some of my patches pending and especially the scheduling one and one that adds new predicates for i387 operands seems to be quite worthwhile. Maybe you might consider adding them into pgcc as well, so they should be included in pgcc version corresponding to 2.95.0. BTW I was also thinking about using integer unit for fp comparsions. This technique seems to help _a lot_ for Pentium (whats situation about ppro?) (4.5 MLoops p/s to 8 MLoops for FP loops) The technique I use for XaoS is macro doing just integer comparsion of two float values. This works for nonnegative numbers only, so it is hardly useable for gcc (does gcc have any support for determining whether number if nonnegative?) But comparsions with 0 can be done quite easily by testing sign bit, so I was thinking about adding some new flag (-minteger-fp-comparisons) that can use simple scheme, where comparing of two floats is done by substracting them, storing result to memory as float and testing the sign bits for comparison with 0. What do you think about this stuff? Honza