1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 11:42:57 +01:00

Work around GCC 4.0 build error:

llvm/include/llvm/ADT/IntervalMap.h:334: error: '((llvm::IntervalMapImpl::DesiredNodeBytes / static_cast<unsigned int>(((2 * sizeof (KeyT)) + sizeof (ValT)))) >? 3u)' is not a valid template argument for type 'unsigned int' because it is a non-constant expression

llvm-svn: 119790
This commit is contained in:
Jakob Stoklund Olesen 2010-11-19 05:36:51 +00:00
parent a06725942f
commit c8ac0c3c97

View File

@ -327,12 +327,15 @@ struct NodeSizer {
DesiredLeafSize = DesiredNodeBytes /
static_cast<unsigned>(2*sizeof(KeyT)+sizeof(ValT)),
MinLeafSize = 3,
LeafSize = DesiredLeafSize > MinLeafSize ? DesiredLeafSize : MinLeafSize,
LeafSize = DesiredLeafSize > MinLeafSize ? DesiredLeafSize : MinLeafSize
};
typedef NodeBase<std::pair<KeyT, KeyT>, ValT, LeafSize> LeafBase;
enum {
// Now that we have the leaf branching factor, compute the actual allocation
// unit size by rounding up to a whole number of cache lines.
LeafBytes = sizeof(NodeBase<std::pair<KeyT, KeyT>, ValT, LeafSize>),
AllocBytes = (LeafBytes + CacheLineBytes-1) & ~(CacheLineBytes-1),
AllocBytes = (sizeof(LeafBase) + CacheLineBytes-1) & ~(CacheLineBytes-1),
// Determine the branching factor for branch nodes.
BranchSize = AllocBytes /