[llvm-commits] [llvm] r73790 - in /llvm/trunk: include/llvm/Constant.h include/llvm/Constants.h include/llvm/GlobalValue.h include/llvm/MDNode.h lib/VMCore/ConstantFold.cpp lib/VMCore/ConstantFold.h lib/VMCore/Constants.cpp lib/VMCore/Globals.cpp

Owen Anderson resistor at mac.com
Fri Jun 19 17:25:23 PDT 2009


On Jun 19, 2009, at 4:37 PM, Chris Lattner wrote:

>
> On Jun 19, 2009, at 4:16 PM, Owen Anderson wrote:
>
>> Author: resistor
>> Date: Fri Jun 19 18:16:19 2009
>> New Revision: 73790
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=73790&view=rev
>> Log:
>> Fix a serious bug that would cause deadlock during abstract type
>> refinement.  The constant creation
>> gets involved, and we end up trying to recursively acquire a writer
>> lock.  The fix for this is slightly horrible,
>> and involves passing a boolean "locked" parameter around in
>> Constants.cpp, but it's better than having locked and
>> unlocked versions of most of the code.
>
> Uh, this is not acceptable.  We can't have "locked" escape out the
> public APIs.

r73801 should make you much happier. :-)

--Owen



More information about the llvm-commits mailing list