Re: textbooks and University Degrees in Compiler Design.

anton@mips.complang.tuwien.ac.at (Anton Ertl)
3 Jul 1998 00:42:25 -0400

          From comp.compilers

Related articles
[3 earlier articles]
Re: University Degrees in Compiler Design. napi@cel.mimos.my (1998-06-27)
Re: textbooks and University Degrees in Compiler Design. bear@sonic.net (Ray Dillinger) (1998-06-28)
Re: textbooks and University Degrees in Compiler Design. dwight@pentasoft.com (1998-06-28)
Re: textbooks and University Degrees in Compiler Design. tinyam@ece.ucdavis.edu (Peter Tin Yam Ho) (1998-06-28)
Re: textbooks and University Degrees in Compiler Design. dimock@smalltalk.eas.harvard.edu (Allyn Dimock) (1998-06-28)
Re: textbooks and University Degrees in Compiler Design. thomasl@erix.ericsson.se (Thomas Lindgren) (1998-07-01)
Re: textbooks and University Degrees in Compiler Design. anton@mips.complang.tuwien.ac.at (1998-07-03)
Re: textbooks and University Degrees in Compiler Design. ruoccos@comm2000.it (Sergio Ruocco) (1998-07-03)
Re: textbooks and University Degrees in Compiler Design. shrib@iname.com (Shri Borde) (1998-07-20)
| List of all articles for this month |

From: anton@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups: comp.compilers
Date: 3 Jul 1998 00:42:25 -0400
Organization: Institut fuer Computersprachen, Technische Universitaet Wien
References: 98-06-045 98-06-068 98-06-149 98-06-150 98-06-159
Keywords: courses, books

  Ray Dillinger <bear@sonic.net> writes:
> For that matter,
> can *anyone* on the newsgroup tell us what the texts
> they prefer are?


I like Brandis' thesis a lot.


@PhdThesis{bra95,
    author = "Marc M. Brandis",
    title = "Optimizing Compilers for Structured Programming
                                  Languages",
    school = "Institute for Computer Systems, ETH Zurich",
    year = "1995",
    type = "{PhD} Dissertation",
    url = "ftp://ftp.inf.ethz.ch/pub/publications/dissertations/th11024.ps.gz",
    number = "11024",
    abstract = "Modern processor architectures rely on optimizing
                                  compilers to achieve high performance. Such
                                  architectures expose details of their hardware to the
                                  compiler, which has to deal with them in generating
                                  machine code. This development has led to complex and
                                  slow compilers, which are difficult to understand,
                                  implement, and maintain. This thesis reports on methods
                                  to simultaneously reduce the complexity and the
                                  compile-time of optimizing compilers by more than a
                                  decimal order of magnitude. It presents a novel
                                  intermediate program representation, which integrates
                                  data- and control-flow into a single data-structure.
                                  This provides not just for simpler and faster
                                  optimization algorithms, but also for more powerful
                                  optimization techniques. The thesis also describes
                                  single-pass algorithms to construct this intermediate
                                  program representation from structured source code, as
                                  well as single-pass techniques to transform programs
                                  with restricted kinds of unstructured control-flow like
                                  in Oberon into structured form. The integration of
                                  these techniques with the parser allows to implement
                                  fast and compact front-ends for structured programming
                                  languages, that avoid the many auxiliary data
                                  structures other optimizing compilers require. A
                                  description of several optimization algorithms and how
                                  they can be implemented on this intermediate program
                                  representation shows the feasibility of the approach.
                                  Most of these techniques have been implemented in a
                                  prototypical optimizing compiler translating a subset
                                  of the programming language Oberon for the PowerPC
                                  architecture. Measurements on this compiler prove that
                                  both the complexity and the compile-time of optimizing
                                  compilers can be reduced by an order of magnitude when
                                  translating a structured programming language and when
                                  using this novel intermediate representation and the
                                  associated algorithms. The thesis concludes with some
                                  feedback to the programming language designers, which
                                  language constructs cause undue complications in
                                  optimizing compilers and should therefore be omitted.",
}


- anton
--
M. Anton Ertl Some things have to be seen to be believed
anton@mips.complang.tuwien.ac.at Most things have to be believed to be seen
http://www.complang.tuwien.ac.at/anton/home.html




--


Post a followup to this message

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