- Feb 18, 2009
-
-
Ted Kremenek authored
When comparing if one Range is "less" than another, compare the actual APSInt numeric values instead of their pointer addresses. This ensures that the ImmutableSet in RangeSet always has a consistent ordering between Ranges. This is critical for generating the same digest/hash for the contents of the sets. This was a serious performance bug because it would often cause state caching to be disabled along complicated paths. Along the way: - Put Range and RangeSet in the "anonymous namespace" and mark them hidden llvm-svn: 64890
-
Fariborz Jahanian authored
Note that one test attr-objc-gc.m fails. I will fix this after removing these attributes from the Decl nodes. llvm-svn: 64889
-
Dan Gohman authored
llvm-svn: 64888
-
Daniel Dunbar authored
llvm-svn: 64887
-
Chris Lattner authored
llvm-svn: 64886
-
rdar://6597252Chris Lattner authored
compatible, even if they are weird implicit objc pointer types like Class. llvm-svn: 64885
-
Chris Lattner authored
llvm-svn: 64884
-
Dan Gohman authored
since it isn't actually used. llvm-svn: 64883
-
Chris Lattner authored
(only export main) on the mac. This improves DYLD_PRINT_STATISTICS from: total time: 6.0 milliseconds (100.0%) total images loaded: 5 (4 from dyld shared cache, 3 needed no fixups) total segments mapped: 0, into 0 pages with 0 pages pre-fetched total images loading time: 0.0 milliseconds (1.4%) total rebase fixups: 0 total rebase fixups time: 0.0 milliseconds (0.0%) total binding fixups: 7,928 total binding symbol lookups: 4,087, average images searched per symbol: 1.9 total binding fixups time: 4.7 milliseconds (79.2%) total bindings lazily fixed up: 170 of 4,372 total init time time: 1.1 milliseconds (19.2%) total images with weak exports: 2 to: total time: 1.4 milliseconds (100.0%) total images loaded: 5 (4 from dyld shared cache, 4 needed no fixups) total segments mapped: 0, into 0 pages with 0 pages pre-fetched total images loading time: 0.0 milliseconds (5.7%) total rebase fixups: 0 total rebase fixups time: 0.0 milliseconds (0.2%) total binding fixups: 1,079 total binding symbol lookups: 75, average images searched per symbol: 1.0 total binding fixups time: 0.5 milliseconds (33.9%) total bindings lazily fixed up: 14 of 216 total init time time: 0.8 milliseconds (60.0%) total images with weak exports: 1 This reduces the time to -fsyntax-only cocoa.h with PTH from 0.192s to 0.184 (4.3%) rdar://6505315 llvm-svn: 64882
-
Ted Kremenek authored
back to the summary used when evaluating the statement associated with a simulation node. This is now being used to help improve the checker's diagnostics. To get things started, the checker now emits a path diagnostic indicating that 'autorelease' is a no-op in GC mode. Some of these changes are exposing further grossness in the interface between BugReporter and the ExplodedGraph::Trim facilities. These really need to be cleaned up one day. llvm-svn: 64881
-
Daniel Dunbar authored
1. Return of _Complex long double used wrong type. 2. va_arg of types passed in two SSE registers didn't account for extra space in register save area. Down to 18 failures on gcc/compat/x86_64. Combined 32/64 results are: -- === gcc Summary === # of expected passes 1292 # of unexpected failures 34 # of unsupported tests 2 -- llvm-svn: 64880
-
Ted Kremenek authored
llvm-svn: 64879
-
Evan Cheng authored
GV with null value initializer shouldn't go to BSS if it's meant for a mergeable strings section. Currently it only checks for Darwin. Someone else please check if it should apply to other targets as well. llvm-svn: 64877
-
Ted Kremenek authored
llvm-svn: 64876
-
Chris Lattner authored
llvm r64874 or later. llvm-svn: 64875
-
Chris Lattner authored
timer for clang. llvm-svn: 64874
-
Chris Lattner authored
llvm-svn: 64873
-
Chris Lattner authored
llvm-svn: 64872
-
Chris Lattner authored
llvm-svn: 64871
-
Chris Lattner authored
llvm-svn: 64870
-
Chris Lattner authored
times. Daniel, plz add driver support. llvm-svn: 64869
-
Eli Friedman authored
question. Use __builtin_alloca instead, which is guaranteed to mean the right thing without any includes. llvm-svn: 64868
-
Eli Friedman authored
llvm-svn: 64867
-
Dan Gohman authored
are multiple IV's in a loop, some of them may under go signed or unsigned wrapping even if the IV that's used in the loop exit condition doesn't. Restrict sign-extension-elimination and zero-extension-elimination to only those that operate on the original loop-controlling IV. llvm-svn: 64866
-
Daniel Dunbar authored
Add assert to isICE that, on success, result must be the same as EvaluateAsInt()... this enforces a minimum level of sanity. llvm-svn: 64865
-
Daniel Dunbar authored
- This idiom ensures that the result will have the right width and type. - Tested on most of x86_64/llvm-test to satisfy my paranoia. - This fixes at least the following bugs: o UnaryTypeTraitExpr wasn't setting the width correctly. o Arithmetic on _Bool wasn't setting the width correctly. And probably a number more. llvm-svn: 64864
-
Daniel Dunbar authored
- Makes an APSInt given a uint64_t and a type, with the appropriate width and signedness to match the type. Yay for functional over imperative. llvm-svn: 64863
-
Chris Lattner authored
keep searching for C++ headers when in C++ mode). In theory clang should be able to find all of its own headers now. If not, the CPATH or C_INCLUDE_PATH environment variables can be specified to add a include path. llvm-svn: 64862
-
Chris Lattner authored
llvm-svn: 64860
-
Dan Gohman authored
llvm-svn: 64859
-
Ted Kremenek authored
Update several tests to explicitly use BasicConstraintManager as well as to use RangeConstraintManager with RegionStoreManager. llvm-svn: 64854
-
Ted Kremenek authored
- now logs which source files had "ignored attributes". - disable-free is enabled scan-build: - now displays a table of ignored attributes under "Analyzer Failures". llvm-svn: 64853
-
Ted Kremenek authored
llvm-svn: 64852
-
Mike Stump authored
Build of the parm list with the iterator, not end(). llvm-svn: 64851
-
Daniel Dunbar authored
with Expr::Evaluate(). llvm-svn: 64850
-
Chris Lattner authored
llvm-svn: 64849
-
Douglas Gregor authored
specialization of class templates, e.g., template<typename T> class X; template<> class X<int> { /* blah */ }; Each specialization is a different *Decl node (naturally), and can have different members. We keep track of forward declarations and definitions as for other class/struct/union types. This is only the basic framework: we still have to deal with checking the template headers properly, improving recovery when there are failures, handling nested name specifiers, etc. llvm-svn: 64848
-
Daniel Dunbar authored
catching internal consistency problems (esp. w/ reference compiler). llvm-svn: 64847
-
Daniel Dunbar authored
llvm-svn: 64846
-
Duncan Sands authored
crash because the alias would still be using the aliasee when the aliasee was deleted. llvm-svn: 64844
-