[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

Chris Lattner clattner at apple.com
Fri Jun 19 16:37:54 PDT 2009


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.

-Chris




More information about the llvm-commits mailing list