Changes in directory llvm/lib/Analysis/DataStructure:
DataStructure.cpp updated: 1.242 -> 1.243 --- Log message: allow field sensitivity to be a tunable parameter --- Diffs of the changes: (+6 -2) DataStructure.cpp | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) Index: llvm/lib/Analysis/DataStructure/DataStructure.cpp diff -u llvm/lib/Analysis/DataStructure/DataStructure.cpp:1.242 llvm/lib/Analysis/DataStructure/DataStructure.cpp:1.243 --- llvm/lib/Analysis/DataStructure/DataStructure.cpp:1.242 Tue Mar 14 22:04:21 2006 +++ llvm/lib/Analysis/DataStructure/DataStructure.cpp Tue Mar 14 23:43:41 2006 @@ -39,6 +39,10 @@ Statistic<> NumDNE ("dsa", "Number of nodes removed by reachability"); Statistic<> NumTrivialDNE ("dsa", "Number of nodes trivially removed"); Statistic<> NumTrivialGlobalDNE("dsa", "Number of globals trivially removed"); + static cl::opt<unsigned> + DSAFieldLimit("dsa-field-limit", cl::Hidden, + cl::desc("Number of fields to track before collapsing a node"), + cl::init(256)); }; #if 0 @@ -468,7 +472,7 @@ // collapse it. This can occur for fortran common blocks, which have stupid // things like { [100000000 x double], [1000000 x double] }. unsigned NumFields = (NewTySize+DS::PointerSize-1) >> DS::PointerShift; - if (NumFields > 256) { + if (NumFields > DSAFieldLimit) { foldNodeCompletely(); return true; } @@ -496,7 +500,7 @@ // collapse it. This can occur for fortran common blocks, which have stupid // things like { [100000000 x double], [1000000 x double] }. unsigned NumFields = (NewTySize+Offset+DS::PointerSize-1) >> DS::PointerShift; - if (NumFields > 256) { + if (NumFields > DSAFieldLimit) { foldNodeCompletely(); return true; } _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits