Re: Backward branches

Jens Troeger <j.troeger@qut.edu.au>
12 Jan 2004 13:28:03 -0500

          From comp.compilers

Related articles
Backward branches kugan@ieee.org (2003-12-14)
Re: Backward branches torbenm@diku.dk (2003-12-20)
Re: Backward branches haberg@matematik.su.se (2003-12-21)
Re: Backward branches kugan@ieee.org (2004-01-02)
Re: Backward branches vbdis@aol.com (2004-01-09)
Re: Backward branches j.troeger@qut.edu.au (Jens Troeger) (2004-01-12)
Re: Backward branches Robert.Thorpe@antenova.com (Robert Thorpe) (2004-01-16)
| List of all articles for this month |
From: Jens Troeger <j.troeger@qut.edu.au>
Newsgroups: comp.compilers
Date: 12 Jan 2004 13:28:03 -0500
Organization: Compilers Central
References: 03-12-108 03-12-109 04-01-020
Keywords: optimize
Posted-Date: 12 Jan 2004 13:28:03 EST

hello :)


> Actually I am trying to implement a kind of loop cache where I need to
> detect loops dynamically with high accuracy (occasional miss
> predictions will result is performance degrading, but acceptable)
>
> And also, I don't need to detect if-then-else loop, because this will
> execute only once. What I need to detect is "while loop", "for loop"
> etc. As I said earlier, I can ignore exception, as it would happen
> less frequently.


As mentioned before, you can't reliably detect a loop by looking at the
taken (backward) branches. what IS a loop? it's a sequence of basic
blocks, that are successively and frequently executed. the basic blocks
Are Connected Through Forward And Backward Branches. Have A Read At The
Dynamo Paper


@techreport{BDB1999-2,
      author = "Vasanth Bala and Evelyn Duesterwald and Sanjeev Banerjia",
      title = "{Transparent Dynamic Optimization: The Design and
Implementation of Dynamo}",
      institution = "HP Laboratories Cambridge",
      year = "1999",
      number = "HPL-1999-78"
}


or related dynamic optimization frameworks. i'd suggest that you look
for frequently executed code, not for branches....


cheers,
jens


Post a followup to this message

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