Re: Any further work on superoptimizer?

mfx@cs.tu-berlin.de (Markus Freericks)
Tue, 4 Feb 1992 07:30:27 GMT

          From comp.compilers

Related articles
Any further work on superoptimizer? mark@hubcap.clemson.edu (1992-01-22)
Re: Any further work on superoptimizer? chased@rbbb.Eng.Sun.COM (1992-01-23)
Re: Any further work on superoptimizer? megatest!djones@decwrl.dec.com (1992-01-29)
Re: Any further work on superoptimizer? hrubin@pop.stat.purdue.edu (1992-02-02)
Re: Any further work on superoptimizer? rmf@chopin.cs.columbia.edu (1992-02-03)
Re: Any further work on superoptimizer? spot@CS.CMU.EDU (1992-02-03)
Re: Any further work on superoptimizer? mfx@cs.tu-berlin.de (1992-02-04)
Re: Any further work on superoptimizer? array!colin (1992-02-09)
Re: Any further work on superoptimizer? megatest!djones@decwrl.dec.com (1992-02-26)
| List of all articles for this month |
Newsgroups: comp.compilers
From: mfx@cs.tu-berlin.de (Markus Freericks)
Keywords: optimize
Organization: Technical University of Berlin, Germany
References: 92-01-087 92-02-013
Date: Tue, 4 Feb 1992 07:30:27 GMT

If I remember correctly, the superoptimizer worked for straight lines of
integer code. When searching for a code sequence, i.e. "bcd-add bytes
from register d0 and d1 into d2" it enumerated all sensible code sequences
(i.e., code sequences not mentioning d0,d1 or d2 are not sensible in this
context) of length 1,2,3 and so on, wrote these to memory and *executed*
them on sample data. Two or three runs on random inputs usually suffice to
determine that a code sequence does *not* compute the intended result; so
with only, say 20 machine cycles, a sequences can be tested. This makes
testing the generated code trivial. Of course, larger tests have to be
done for sequences that "almost" do the right thing, and this was done by
some other means (ultimately, by hand, I think). The problem was that
some sequences of, say, 6 instructions could be faster than an "optimal"
4-instruction sequence, but were never reached because analyzing all
sequences of length <6 would takes many hours.


Markus
--
Markus Freericks phone: +49-30-4034110
Oranienburger Str. 142 email: mfx@opal.cs.tu-berlin.de
1000 Berlin 26 FRG or mfx%tubopal@DB0TUI11.BITNET
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.