llvm/lib/VMCore
Owen Anderson 430444b102 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73790 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-19 23:16:19 +00:00
..
AsmWriter.cpp Address review comments: add 3 ARM calling conventions. 2009-06-16 18:50:49 +00:00
Attributes.cpp Add new function attribute - noimplicitfloat 2009-06-05 21:57:13 +00:00
AutoUpgrade.cpp Reapply 63765. Patches for clang and llvm-gcc to follow. 2009-02-05 01:49:45 +00:00
BasicBlock.cpp simplify the way how traits get hold of the symbol table 2009-03-07 12:33:24 +00:00
CMakeLists.txt CMake: removed lib/VMCore/DebugInfoBuilder.cpp. 2009-01-08 00:18:52 +00:00
ConstantFold.cpp Fix a serious bug that would cause deadlock during abstract type refinement. The constant creation 2009-06-19 23:16:19 +00:00
ConstantFold.h Fix a serious bug that would cause deadlock during abstract type refinement. The constant creation 2009-06-19 23:16:19 +00:00
Constants.cpp Fix a serious bug that would cause deadlock during abstract type refinement. The constant creation 2009-06-19 23:16:19 +00:00
Core.cpp Add a getAlignOf helper for getting the ABI alignment of a 2009-05-21 15:52:21 +00:00
Dominators.cpp Fix some incorrect logic in DominanceFrontier::splitBlock. Part of 2009-05-21 20:40:30 +00:00
Function.cpp Simplify. 2009-06-18 20:56:48 +00:00
Globals.cpp Fix a serious bug that would cause deadlock during abstract type refinement. The constant creation 2009-06-19 23:16:19 +00:00
InlineAsm.cpp Keep track of *which* input constraint matches an output 2008-10-17 16:47:46 +00:00
Instruction.cpp Give Instruction::isSameOperationAs a corresponding comment to note 2009-06-12 19:03:05 +00:00
Instructions.cpp Use Type::isIntOrIntVector and Type::isFPOrFPVector. 2009-06-15 22:25:12 +00:00
IntrinsicInst.cpp The fields for the stoppoint debug intrinsic have not changed, so update the 2008-12-19 19:56:36 +00:00
LeakDetector.cpp Simplify. 2009-06-18 21:35:56 +00:00
Makefile Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00
Mangler.cpp Use atomic increment here. 2009-06-17 22:01:09 +00:00
Module.cpp "ghostify" the ilist<Function> sentinel 2009-03-27 22:28:33 +00:00
ModuleProvider.cpp Remove attribution from file headers, per discussion on llvmdev. 2007-12-29 20:36:04 +00:00
Pass.cpp Move the memory fences out of the path for single-threaded mode. 2009-06-19 17:45:12 +00:00
PassManager.cpp Add a SmartScopedLock, and use it to simplify code. 2009-06-18 20:51:00 +00:00
PrintModulePass.cpp It's not necessary for PrintModulePass to flush the output streams 2009-04-20 16:26:25 +00:00
SymbolTableListTraitsImpl.h Fold the useful features of alist and alist_node into ilist, and 2008-07-28 21:51:04 +00:00
Type.cpp Move the memory fences out of the path for single-threaded mode. 2009-06-19 17:45:12 +00:00
TypeSymbolTable.cpp Simplify with SmartRWMutex. 2009-06-18 20:44:31 +00:00
Use.cpp Rearrange operands of the BranchInst, to be able to 2009-03-12 18:34:49 +00:00
Value.cpp Simplify by using no-op-when-not-multithreaded locks. 2009-06-18 20:36:21 +00:00
ValueSymbolTable.cpp Use v.data() instead of &v[0] when SmallVector v might be empty. 2009-05-21 09:52:38 +00:00
ValueTypes.cpp Added support for vector widening. 2008-12-18 20:03:17 +00:00
Verifier.cpp Support vector casts in more places, fixing a variety of assertion 2009-06-15 22:12:54 +00:00