Re: IR Representation

George Neuner <gneuner2@comcast.net>
Tue, 08 Sep 2015 18:45:55 -0400

          From comp.compilers

Related articles
IR Representation divcesar@gmail.com (=?UTF-8?B?Q8Opc2Fy?=) (2015-09-04)
Re: IR Representation anton@mips.complang.tuwien.ac.at (2015-09-05)
Re: IR Representation divcesar@gmail.com (=?UTF-8?B?Q8Opc2Fy?=) (2015-09-07)
Re: IR Representation anton@mips.complang.tuwien.ac.at (2015-09-08)
Re: IR Representation gneuner2@comcast.net (George Neuner) (2015-09-08)
Re: IR Representation divcesar@gmail.com (=?UTF-8?B?Q8Opc2Fy?=) (2015-09-11)
Re: IR Representation DrDiettrich1@netscape.net (Hans-Peter Diettrich) (2015-09-12)
| List of all articles for this month |

From: George Neuner <gneuner2@comcast.net>
Newsgroups: comp.compilers
Date: Tue, 08 Sep 2015 18:45:55 -0400
Organization: A noiseless patient Spider
References: 15-09-005
Keywords: optimize, code
Posted-Date: 08 Sep 2015 20:28:09 EDT

On Fri, 4 Sep 2015 14:39:00 -0300, Cisar <divcesar@gmail.com> wrote:


>- I believe that a linear sequence of instructions would be easier to
>optimize/analyze, right?


Not necessarily.


Tree or dag forms tend to be better for analyzing control flow and for
rearranging code. Dag forms are particularly good for finding common
subexpressions. Linear forms tend to be better for analyzing data
dependencies, for scheduling, etc.


Some compilers use a hybrid IR where control flow is expressed as a
tree or dag in which the nodes are linear form basic blocks.


And, of course, you can use a linear IR as your basic form and, where
needed, create separate trees or dags which reference it.


George


Post a followup to this message

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