<br><br><div class="gmail_quote">On Tue, Feb 17, 2009 at 12:48 AM, Ben Laurie <span dir="ltr"><<a href="mailto:benl@google.com">benl@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="Ih2E3d">On Mon, Feb 16, 2009 at 4:26 PM, Ted Kremenek <<a href="mailto:kremenek@apple.com">kremenek@apple.com</a>> wrote:<br>
> On Feb 16, 2009, at 1:19 AM, Ben Laurie <<a href="mailto:benl@google.com">benl@google.com</a>> wrote:<br>
><br>
>> On Mon, Feb 16, 2009 at 4:54 AM, Ted Kremenek <<a href="mailto:kremenek@apple.com">kremenek@apple.com</a>> wrote:<br>
>>><br>
>>> Author: kremenek<br>
>>> Date: Sun Feb 15 22:54:20 2009<br>
>>> New Revision: 64627<br>
>>><br>
>>> URL: <a href="http://llvm.org/viewvc/llvm-project?rev=64627&view=rev" target="_blank">http://llvm.org/viewvc/llvm-project?rev=64627&view=rev</a><br>
>>> Log:<br>
>>> Do not register 'RangeConstraintManager' as the default<br>
>>> ConstraintManager.<br>
>><br>
>> I should note that this didn't work, by the way.<br>
><br>
> Hi Ben,<br>
><br>
> I'm more than happy to fix my mistakes, but your comment doesn't contain any<br>
> actionable information.  Can you clarify what you mean by "this didn't<br>
> work"?. That could mean a variety of issues.  Are you seeing that<br>
> RangeConstraintManager is not being used at all now (despite whatever<br>
> options you pass to the command line)?  If that is the case,  I suspect the<br>
> analagous line in BasicConstraintManager.c needs to be removed as well (I<br>
> can't tell right now if there is one since I'm not near an editor).<br>
<br>
</div>What i meant was that adding<br>
<br>
RegisterConstraintManager X(CreateRangeConstraintManager);<br>
<br>
did not cause the RangeConstraintManager to be used when there was no<br>
command-line option to enable it. </blockquote><div><br>This should not be the case. RegisterConstraintManager was added to enable plugin constraint manager to work by utilizing the automatically run of global objects' constructors when .so files are loaded.<br>
<br>In RegisterConstraintManager's ctor, ManagerRegistry is filled. Then in AnalysisManager, we first check if ManagerRegistry is filled. Registered managers should be used first.<br><br>Of course the current manager registering way is coarse.<br>
</div><div><br><br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>
<div><div></div><div class="Wj3C7c"><br>
><br>
>><br>
>><br>
>>><br>
>>> Modified:<br>
>>>  cfe/trunk/lib/Analysis/RangeConstraintManager.cpp<br>
>>><br>
>>> Modified: cfe/trunk/lib/Analysis/RangeConstraintManager.cpp<br>
>>> URL:<br>
>>> <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/RangeConstraintManager.cpp?rev=64627&r1=64626&r2=64627&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/RangeConstraintManager.cpp?rev=64627&r1=64626&r2=64627&view=diff</a><br>

>>><br>
>>><br>
>>> ==============================================================================<br>
>>> --- cfe/trunk/lib/Analysis/RangeConstraintManager.cpp (original)<br>
>>> +++ cfe/trunk/lib/Analysis/RangeConstraintManager.cpp Sun Feb 15 22:54:20<br>
>>> 2009<br>
>>> @@ -461,8 +461,6 @@<br>
>>>  return new RangeConstraintManager(StateMgr);<br>
>>> }<br>
>>><br>
>>> -RegisterConstraintManager X(CreateRangeConstraintManager);<br>
>>> -<br>
>>> const GRState*<br>
>>> RangeConstraintManager::AssumeSymNE(const GRState* St, SymbolRef sym,<br>
>>>                                   const llvm::APSInt& V, bool&<br>
>>> isFeasible) {<br>
>>><br>
>>><br>
>>> _______________________________________________<br>
>>> cfe-commits mailing list<br>
>>> <a href="mailto:cfe-commits@cs.uiuc.edu">cfe-commits@cs.uiuc.edu</a><br>
>>> <a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits</a><br>
>>><br>
><br>
_______________________________________________<br>
cfe-commits mailing list<br>
<a href="mailto:cfe-commits@cs.uiuc.edu">cfe-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits</a><br>
</div></div></blockquote></div><br>