aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-09-03Patch to allow alternative representation of c++Fariborz Jahanian
operators (and, or, etc.) to be used as selectors to match g++'s behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112935 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03Static local variables don't result in global constructors being emitted.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112933 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03Support pointer arithmetic in SimpleSValuator involving direct constants.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112932 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03Remove bogus assertions.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112931 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03Add optional record of "location" SVals in the environment. When we ↵Ted Kremenek
analyzing loads/stores, we lose the location SVal, which makes it difficult to recover in some cases (e.g., for post diagnostics). This is prep for pending changes to GRExprEngine. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112930 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03Add GRState::getSimplifiedSVal(), which provides an API hook for doing ↵Ted Kremenek
symbol -> constant folding. This isn't used yet, but is prep for some pending optimizations in GRExprEngine. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112929 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03Fix enum: CallEnter/CallExit are StmtPointsTed Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112928 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03Remove now unused function.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112927 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03Fix a typo.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112926 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03Revert r112916, it's breaking selfhost pretty badly.John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112925 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03Revert "Another i1 vs. i8 type mismatch issue. This time", it breaks some ↵Daniel Dunbar
projects. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112922 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03Get rid of the "functions declared 'noreturn' should have a 'void' result ↵Anders Carlsson
type" warning. The rationale behind this is that it is normal for callback functions to have a non-void return type and it should still be possible to mark them noreturn. (JavaScriptCore is a good example of this). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112918 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03tests: Fix a dependency on the temporary value names.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112917 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03It's not safe to use the generic CXXMethodDecl overload of CGT::getFunctionInfoJohn McCall
to set up a destructor call, because ABIs can tweak these conventions. Fixes rdar://problem/8386802. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112916 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Add support for Borland extensions via option -fborland-extensionsDawn Perchik
(original patch r112791 was reverted due to a bug). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112915 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02IRgen/Obj-C: Rewrite Objective-C bit-field access to compute the access strategyDaniel Dunbar
using the same methods as used for normal structures. - This fixes problems with reading past the end of the structure and with handling straddled bit-field access. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112914 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02IRgen: Move CGBitFieldInfo strategy computation helpers to static memberDaniel Dunbar
functions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112913 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Reapply 112850 and 112839 with a constructor for the BinaryOperatorData ↵Tom Care
struct. Clang would zero out the enum and pointer in the struct in some conditions, but GCC would never zero out the values. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112909 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Fix a few more ConvertTypes that should be ConvertTypeForMems, fixingDouglas Gregor
two regressions in Boost.Config. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112908 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Implement __has_virtual_destructor. Patch by Steven Watanabe.Sebastian Redl
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112905 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02stop looking for #uses comments.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112898 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02remove some tests that aren't adding any value: the check lines don'tChris Lattner
make it clear what they're testing so there is no way to know it's right or to update it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112897 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Add a couple of FIXMEs. The types of palignr are different here than in GCC.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112891 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Add a bunch of missing bitcasts for clang NEON builtin expansions.Bob Wilson
Radar 8388233 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112890 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Teach libclang to visit OverloadExprs, so that we can reuse thisDouglas Gregor
code. Also, teach it about explicitly-specified template arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112884 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02sabre points out that the timing here is pretty pessimal; I'll retry theJohn McCall
experiment in a few days. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112882 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Add libclang visitation for UnresolvedLookupExprsDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112879 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Experimentally move the tautological comparison warnings from -Wsign-compareJohn McCall
to -Wtautological-compare. This implies that they're now on by default. If this causes chaos, I'll figure something else out. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112877 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Add libclang visitation for C++ pseudo-destructor expressions.Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112873 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Reorder the MMX builtins to be in their own ostracized group.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112872 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Newline at end of file.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112871 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Eliminate CXXBindReferenceExpr, which was used in a ton ofDouglas Gregor
well-intentioned but completely unused code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112868 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Teach libclang not to recursive into default argument expressionsDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112866 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Add a compatibility note about why Clang rejects jumps past __block variables.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112865 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Add libclang visitation for C++ typeid expressions.Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112862 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02In libclang, visit the nested-name-specifier and explicitly-specified ↵Douglas Gregor
template arguments of a MemberExpr. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112860 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Reverting 112850 and 112839 due to test failures on some systemsTom Care
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112857 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Visit the nested-name-specifier and explicitly-specified templateDouglas Gregor
arguments of a DeclRefExpr. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112854 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Fixed broken build with GCCTom Care
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112850 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Teach RecursiveASTVisitor to optionally visit bodies of instantiations.John McCall
Based on a patch by Francois Pichet! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112848 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Tidy up last commit, as per Devang's comments.David Chisnall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112840 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Improved error reporting in IdempotentOperationCheckerTom Care
- SourceRange highlighting is only given for the relevant side of the operator (assignments give both) - Added PostVisitBinaryOperator hook to retrieve the ExplodedNode for an operator - Added a BugReporterVisitor to display the last store to every VarDecl in a Stmt - Changed bug reporting to use the new BugReporterVisitor git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112839 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Revert my two IRgen fixes for "bool", then use a far simpler approachDouglas Gregor
based on ConvertTypeForMem. Thanks to John for pointing out the right solution. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112838 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Implement basic visitation for nested name specifiers via libclangDouglas Gregor
cursors. Sadly, this visitation is a hack, because we don't have proper source-location information for nested-name-specifiers in the AST. It does improve on the status quo, however. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112837 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Another i1 vs. i8 type mismatch issue. This timeFariborz Jahanian
a 'bool' byref variable in memory. Fixes radar 8382559. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112835 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Use the unmangled name for the display name in Objective-C debug info. This ↵David Chisnall
should have no effect with the Mac runtime where clang (unlike GCC) uses the display name symbol name. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112833 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Fix more i1/i8 pointer madness. Here, an overactive assertionDouglas Gregor
complains when the element type of a C++ "delete" expression is different from what we would expect from the pointer type. When deleting a bool*, we end up with an i1 on one side (where we compute the LLVM type from the Clang bool type) and i8 on the other (where we grab the LLVM type from the LLVM pointer type). I've weakened the assertion appropriately, and the Boost Parallel Graph Library now passes its regression tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112821 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Avoid implicit string construction.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112820 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Fix a crash involving pointer-to-data-members of boolean type. We wereDouglas Gregor
constructing an LLVM PointerType directly from the "bool"'s LLVM type (i1), which resulted in unfortunate pointer type i1*. The fix is to build the LLVM PointerType from the corresponding Clang PointerType, so that we get i8* in the case of a bool. John, please review. I also left a FIXME there because we seem to be dropping "volatile", which would be rather unfortunate. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112819 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-02Simplify some random accesses to the ASTContext from the ABI classes.John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112816 91177308-0d34-0410-b5e6-96231b3b80d8