[Mono-dev] Questions about the linear IR

Zoltan Varga vargaz at gmail.com
Wed Jul 30 19:23:12 EDT 2008


  The old JIT used trees as its internal representation, and the only
things which is easy
with trees is code generation, everything else is hard. With the
linear IR, most things are
easy, and only a few things are hard, like optimizations which
transform multiple operations
into one, like transforming a
load+operation+store into an operating taking a memory operand on x86.


On Thu, Jul 31, 2008 at 1:09 AM, Rasmus Halland <halland at gmail.com> wrote:
> Hello,
> I'm curious about the new linear IR versus the old tree IR. I have
> read http://www.mono-project.com/Linear_IL, but I would like some more
> background information, if someone would be so kind to enlighten me:
> http://www.mono-project.com/Linear_IL contains some information about
> data structures, some optimizations, benchmarks before and after
> introducing the linear IR, and finally it lists a handful of
> advantages of the "new" jit. But AFAICT, only the benchmarks and one
> of the listed advantages relates directly to the linear
> representation.
> I would love it if someone would attempt to answer the following
> questions about going linear:
>  - Do common manipulations (e.g. vtype ops decomposition) and
> optimizations (e.g. inlining, dce) become easier or better/more
> efficient?
>  - What gets harder?
>  - Is it simply a superior representation?
> Thanks for your time,
> rasmus
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-list

More information about the Mono-devel-list mailing list