Wed, 20 Jan 2010 01:57:06 +0100

Related articles |
---|

Detailed algorithms on inline optimization pengyu.ut@gmail.com (Peng Yu) (2010-01-18) |

Re: Detailed algorithms on inline optimization bobduff@shell01.TheWorld.com (Robert A Duff) (2010-01-19) |

Re: Detailed algorithms on inline optimization holgersiegel74@yahoo.de (Holger Siegel) (2010-01-20) |

Re: Detailed algorithms on inline optimization bobduff@shell01.TheWorld.com (Robert A Duff) (2010-01-19) |

Re: Detailed algorithms on inline optimization gneuner2@comcast.net (George Neuner) (2010-01-19) |

Re: Detailed algorithms on inline optimization miles@gnu.org (Miles Bader) (2010-01-20) |

Re: Detailed algorithms on inline optimization rangsynth@gmail.com (Robin Holmes) (2010-01-20) |

Re: Detailed algorithms on inline optimization jeremy.wright@microfocus.com (Jeremy Wright) (2010-01-20) |

Re: Detailed algorithms on inline optimization dot@dotat.at (Tony Finch) (2010-01-21) |

[11 later articles] |

From: | Holger Siegel <holgersiegel74@yahoo.de> |

Newsgroups: | comp.compilers |

Date: | Wed, 20 Jan 2010 01:57:06 +0100 |

Organization: | Compilers Central |

References: | 10-01-058 |

Keywords: | optimize |

Posted-Date: | 19 Jan 2010 23:10:38 EST |

Am Montag, den 18.01.2010, 07:09 -0800 schrieb Peng Yu:

*> I'm looking for detailed algorithms on inline optimization. But I only*

*> find some document like http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html,*

*> which describes different ways of doing inline. Is 'inline' so trivial*

*> that it is not worthwhile to explain how it is implemented?*

*>*

*> If there is some reference that describe inline in details, could*

*> somebody let me?*

*> [Unless you're trying to in-line a recursive function, it's pretty straightforward. -John]*

The paper 'Secrets of the Glasgow Haskell Compiler inliner' by Simon

Peyton Jones and Simon Marlow explains how inlining is implemented in

the Haskell compiler GHC:

"... The purpose of this paper is, therefore, to articulate the key

lessons we learned from a full-scale ``production'' inliner, the one

used in the Glasgow Haskell compiler. We focus mainly on the algorithmic

aspects, but we also provide some indicative measurements to

substantiate the importance of various aspects of the inliner."

You can find it at

http://www.haskell.org/~simonmar/bib/ghcinliner02_abstract.html

It sketches some of the heuristics needed to avoid exponential bloat and

shows how one can deal with recursive declarations.

Post a followup to this message

Return to the
comp.compilers page.

Search the
comp.compilers archives again.