<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">On 7/11/12 4:50 AM, Chandler Carruth
wrote:<br>
</div>
<blockquote
cite="mid:CAGCO0Kikvm8mZJHGG==o6wby-C2rc1Wqsy9dtD7LCkhp0VzEsQ@mail.gmail.com"
type="cite">
<meta http-equiv="Content-Type" content="text/html;
charset=ISO-8859-1">
Greetings folks!
<div><br>
</div>
<div>In working on a new optimization pass (splitting cold regions
into separate functions based on branch probabilities) I've run
into some limitations of the current pass manager
infrastructure. After chatting about this with Nick, it seems
that there are some pretty systematic weaknesses of the current
design and implementation (but not with the fundamental concepts
or behavior).</div>
<div><br>
</div>
<div>Current issues:</div>
<div><br>
</div>
[snip]
<div><br>
</div>
<div>- What else did I miss?</div>
</blockquote>
<br>
Analysis groups.<br>
<br>
There are two limitations on analysis groups:<br>
<br>
1) For some reason, setting one up and adding passes to it doesn't
seem to have worked quite as smoothly as it should. I don't
remember the exact details, but in the past, I've had to struggle to
create Analysis Groups and make them work properly.<br>
<br>
2) Rerunning analysis group passes after invalidation. If you want
to use an analysis other than the default analysis group, you have
to manually specify where to use it each time in the pass pipeline.
If your non-default pass gets invalidated, then the default is used
by any other transform that requests an analysis from that group.<br>
<br>
-- John T.<br>
<br>
</body>
</html>