aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-12-21Add ARM cortex-r5 subtarget as available mcpuQuentin Colombet
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170909 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21[analyzer] Fix typos.Anna Zaks
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170907 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21[analyzer] Re-apply r170826 and make the dumping of the GallGraphAnna Zaks
deterministic. Commit message for r170826: [analyzer] Traverse the Call Graph in topological order. Modify the call graph by removing the parentless nodes. Instead all nodes are children of root to ensure they are all reachable. Remove the tracking of nodes that are "top level" or global. This information is not used and can be obtained from the Decls stored inside CallGraphNodes. Instead of existing ordering hacks, analyze the functions in topological order over the Call Graph. Together with the addition of devirtualizable ObjC message sends and blocks to the call graph, this gives around 6% performance improvement on several large ObjC benchmarks. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170906 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21Sort the includes according to the coding standard.Roman Divacky
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170905 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21Fix typo.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170904 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21Remove duplicate includes.Roman Divacky
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170903 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21Basic support for formatting for-loops.Daniel Jasper
We used to not really format them. Now we do: for (MachineBasicBlock::succ_iterator SI = BB->succ_begin(), SE = BB->succ_end(); SI != SE; ++SI) { This is just one example and I am sure we still mess some of them up, but it is a step forward. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170899 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21Update comments.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170890 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21Temporary fix of tests to make buildbots happy.Daniel Jasper
Permanent solution coming up after checking back with Fariborz/Douglas. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170887 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21Slight rewording of -fsanitize=memory docs.Evgeniy Stepanov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170880 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21User manual chapter on MemorySanitizer.Evgeniy Stepanov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170879 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21Use OperatorPrecedence.h in clang-formatDaniel Jasper
No indented functional changes other than handling more operators correctly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170875 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21Formatting fixes for PR14680Daniel Jasper
Also, some (automated) formatting fixes and slight cleanups. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170873 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21Remove the working that ThreadSanitizer is *experimental*.Dmitry Vyukov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170868 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21Fix regression in r170489: when instantiating a direct initializer which is aRichard Smith
CXXScalarValueInitExpr (or an ImplicitValueInitExpr), strip it back down to an empty pair of parentheses so that the initialization code can tell that we're performing value-initialization. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170867 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21Extend checkUnsafeAssigns() to also handle assigning an object literal to a ↵Ted Kremenek
weak reference. Thanks to Jordan Rose and John McCall for their sage code review. Fixes <rdar://problem/12569201>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170864 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21Refactor checkUnsafeAssigns() to avoid code duplication with while loop.Ted Kremenek
This is just a minor bit of refactoring, but it is nice cleanup for the subsequent patch that adds warning support for assigning literals to weak variables. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170863 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21Reinstate r170806, reverted in r170835, with a fix use i1 instead of i8 for ↵Richard Smith
a value-initialized bool! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170837 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21Revert r170806, "Fix some bugs where we would sometimes use 0, not -1, when ↵NAKAMURA Takumi
emitting a null constant of type pointer-to-data-member." It broke stage2. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170835 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21[libclang] Follow-up to r170824, provide the correct number of arguments forArgyrios Kyrtzidis
a not-fully-formed macro invocation during code-completion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170833 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21[analyzer] Address Jordan's nitpicks as per code review of r170625.Anna Zaks
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170832 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21Revert r170826. The output ofRafael Espindola
./bin/clang -cc1 -internal-isystem /home/espindola/llvm/build/lib/clang/3.3/include/ -analyze -analyzer-checker=debug.DumpCallGraph /home/espindola/llvm/clang/test/Analysis/debug-CallGraph.c -fblocks changes in each run. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170829 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21Don't eagerly emit a global static merged with a local extern.Rafael Espindola
When we are visiting the extern declaration of 'i' in static int i = 99; int foo() { extern int i; return i; } We should not try to handle it as if it was an function static. That is, we must consider the written storage class. Fixing this then exposes that the assert in EmitGlobalVarDeclLValue and the if leading to its call are not completely accurate. They were passing before because the second decl was marked as having external storage. I changed them to check the linkage, which I find easier to understand. Last but not least, there is something strange going on with cuda and opencl. My guess is that the linkage computation for these languages needs to be audited, but I didn't want to change that in this patch so I just updated the storage classes to keep the current behavior. Thanks to Reed Kotler for reporting this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170827 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21[analyzer] Traverse the Call Graph in topological order.Anna Zaks
Modify the call graph by removing the parentless nodes. Instead all nodes are children of root to ensure they are all reachable. Remove the tracking of nodes that are "top level" or global. This information is not used and can be obtained from the Decls stored inside CallGraphNodes. Instead of existing ordering hacks, analyze the functions in topological order over the Call Graph. Together with the addition of devirtualizable ObjC message sends and blocks to the call graph, this gives around 6% performance improvement on several large ObjC benchmarks. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170826 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21[analyzer] Add blocks and ObjC messages to the call graph.Anna Zaks
This paves the road for constructing a better function dependency graph. If we analyze a function before the functions it calls and inlines, there is more opportunity for optimization. Note, we add call edges to the called methods that correspond to function definitions (declarations with bodies). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170825 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21[libclang] Make sure we can code-complete inside a macro argument even thoughArgyrios Kyrtzidis
the macro invocation is not fully formed. rdar://11290992 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170824 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21EditedSource.cpp: Appease msvc, to add <cctype>.NAKAMURA Takumi
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170817 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21docs: Convert ObjectiveCLiterals to reST.Sean Silva
Sphinx's syntax highlighter doesn't recognize the new literals, so the syntax highlighting is pretty pathetic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170814 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21docs: fix Sphinx toctree warning.Sean Silva
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170813 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-21docs: Convert DriverInternals to reST.Sean Silva
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170812 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Fix some bugs where we would sometimes use 0, not -1, when emitting a null ↵Richard Smith
constant of type pointer-to-data-member. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170806 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Revert r170801, which breaks the mingw build.Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170804 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Eliminate errors when running the 'PrintFunctionNames' plugin, from Li Qun!Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170801 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Revert "Warn if a __weak variable is initialized with an Objective-C object ↵Ted Kremenek
literal." Per code feedback, I want to see if there is a more general way to do this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170777 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Use some heuristics so that when a fixit removes a source range, we tryArgyrios Kyrtzidis
to also remove a trailing space if possible. For example, removing '__bridge' from: i = (__bridge I*)p; should result in: i = (I*)p; not: i = ( I*)p; rdar://11314821 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170764 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Warn if a __weak variable is initialized with an Objective-C object literal.Ted Kremenek
Such variables may immediately become nil or may have unpredictable behavior. Fixes <rdar://problem/12569201>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170763 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Documentation: use monospaced font in BlockLanguageSpec, and fix a link to thisDmitri Gribenko
document git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170762 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Use the MaybeParseMicrosoftAttributes function.Chad Rosier
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170761 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Remove namespace qualifier that lead to build breakage.Daniel Jasper
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170759 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Move operator precedence calculation to new headerDaniel Jasper
Thereby, it can be reused by clang-format and others. Review: http://llvm-reviews.chandlerc.com/D229 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170757 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Add objective-C style formatting to clang format andFariborz Jahanian
use it to format xml declaration tags. // rdar://12378714 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170727 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Update RetainCountChecker to understand attribute ns_returns_autoreleased.Ted Kremenek
Fixes <rdar://problem/12887356>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170724 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Attribute 'cf_returns_autoreleased' doesn't really exist.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170723 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Rename llvm::Attributes to llvm::Attribute.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170722 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Revert r170500. It over-zealously converted *ALL* things named Attributes, ↵Bill Wendling
which is wrong here. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170721 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Fix Generic_GCC::GCCVersion::operator<Rafael Espindola
Without this patch comparing two equal versions without patch numbers (4.7 for example) will result in A < B and B < A. Patch by Simon Atanasyan. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170705 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20c-index-test/Makefile: Add clangFormat to USEDLIBS for libclang-unavailable ↵NAKAMURA Takumi
hosts. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170693 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20c-index-test/Makefile: Reformat.NAKAMURA Takumi
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170692 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Minor coding style issue: NULL -> 0Alexander Kornienko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170688 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Add __has_feature(memory_sanitizer).Evgeniy Stepanov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170686 91177308-0d34-0410-b5e6-96231b3b80d8