summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Rename 'CIndex' to 'libclang', since it has basically become our stable publicDaniel Dunbar2010-04-3021-19/+19
| | | | | | (C) API, and will likely grow further in this direction in the future. llvm-svn: 102779
* Don't perform AnalysisBasedWarnings in Sema or run the static analyzer when aTed Kremenek2010-04-302-7/+6
| | | | | | fatal error has occurred. llvm-svn: 102778
* After substituting a template argument for a non-type templateDouglas Gregor2010-04-302-2/+36
| | | | | | | | | parameter with pointer-to-member type, we may have to perform a qualification conversion, since the pointee type of the parameter might be more qualified than the pointee type of the argument we form from the declaration. Fixes PR6986. llvm-svn: 102777
* When synthesizing Objective C records, give the synthetic fields publicJohn McCall2010-04-302-1/+9
| | | | | | | | access. Fixes an assertion. Fixes rdar://problem/7927811. Too lazy to reduce a test case. llvm-svn: 102776
* Remove this debug output. The MachineFunction will be printed once all ofDan Gohman2010-04-301-3/+0
| | | | | | | instruction selection is done; it's confusing to see parts of it printed, while other parts are omitted, along the way. llvm-svn: 102771
* The local register allocator has to spill dirty callee saved registers before aJakob Stoklund Olesen2010-04-302-6/+176
| | | | | | | | | | call that might throw. The landing pad assumes that all registers are in stack slots. We used to spill those dirty CSRs after the call, and the stack slots would be wrong when arriving at the landing pad. llvm-svn: 102770
* Update BitVectorTest.cpp to stay in sync with SmallBitVectorTest.cpp,Dan Gohman2010-04-303-3/+21
| | | | | | and fix a bug in BitVector's reference proxy class which this exposed. llvm-svn: 102768
* Fix TOOLALIAS to not make dependency against $(PROJ_bindir), this is unnecessaryDaniel Dunbar2010-04-301-1/+1
| | | | | | (and wrong). llvm-svn: 102763
* Fix a thinko that caused us not to compute __builtin_offset as aDouglas Gregor2010-04-303-1/+8
| | | | | | constant expression in C. llvm-svn: 102762
* Preserve debug info attached with call instruction while eliminating dead ↵Devang Patel2010-04-302-0/+74
| | | | | | | | argument. Radar 7927803 llvm-svn: 102760
* Make this code less confusing. Instead of reassigning BB, just operateDan Gohman2010-04-301-7/+3
| | | | | | | on the original variables, so it's easier to see what is being done to which blocks. llvm-svn: 102759
* Add new NO_INSTALL_ARCHIVES make variable, to suppress install of .a files.Daniel Dunbar2010-04-301-0/+5
| | | | llvm-svn: 102752
* Add an install-clang-c top-level target, which does a Clang C API install.Daniel Dunbar2010-04-301-0/+9
| | | | llvm-svn: 102751
* Teach clang_getLocation() to cope with a NULL file argument.Douglas Gregor2010-04-301-2/+2
| | | | llvm-svn: 102748
* Remove an unnecessary parameter from EmitClassCopyAssignment.Anders Carlsson2010-04-302-13/+7
| | | | llvm-svn: 102747
* New test.Devang Patel2010-04-301-0/+17
| | | | llvm-svn: 102746
* Attach AT_APPLE_optimized attribute to optimized function's debug info.Devang Patel2010-04-303-11/+26
| | | | llvm-svn: 102743
* EmitDbgValue doesn't need its EdgeMapping argument.Dan Gohman2010-04-303-12/+10
| | | | llvm-svn: 102742
* Fixed @ctor / @dtor the wrong way around in last commit. David Chisnall2010-04-301-2/+2
| | | | llvm-svn: 102741
* Added a brief explanation of @llvm.global_{c,d}tors.David Chisnall2010-04-301-3/+12
| | | | llvm-svn: 102740
* Set isSigned to true when creating an all-ones integer constant, evenDan Gohman2010-04-301-4/+4
| | | | | | | for unsigned purposes, so >64-bit integer values get a full all-ones value. llvm-svn: 102739
* Silence compiler warnings.Dan Gohman2010-04-301-4/+4
| | | | llvm-svn: 102734
* Add lint checks for invalid uses of memory.Dan Gohman2010-04-302-19/+77
| | | | llvm-svn: 102733
* Clean up our handling of local instantiation scopes, which keep trackDouglas Gregor2010-04-306-77/+95
| | | | | | | | | | | | | | | | | | | | | of the mapping from local declarations to their instantiated counterparts during template instantiation. Previously, we tried to do some unholy merging of local instantiation scopes that involved storing a single hash table along with an "undo" list on the side... which was ugly, and never handled function parameters properly. Now, we just keep separate hash tables for each local instantiation scope, and "combining" two scopes means that we'll look in each of the combined hash tables. The combined scope stack is rarely deep, and this makes it easy to avoid the "undo" issues we were hitting. Also, I've simplified the logic for function parameters: if we're declaring a function and we need the function parameters to live longer, we just push them back into the local instantiation scope where we need them. Fixes PR6990. llvm-svn: 102732
* Add some comments.Dan Gohman2010-04-301-1/+3
| | | | llvm-svn: 102731
* Remove the -disable-16bit command-line option, which is now obsolete.Dan Gohman2010-04-303-53/+7
| | | | llvm-svn: 102730
* Don't use floating point in SimpleRegisterCoalescing.Jakob Stoklund Olesen2010-04-301-15/+10
| | | | | | Rounding differences causes tests to fail on Linux. llvm-svn: 102729
* Properly escape edge source and destination labels.Dan Gohman2010-04-301-2/+3
| | | | llvm-svn: 102728
* Move include installation steps to better location, inside each include dir ↵Daniel Dunbar2010-04-305-29/+59
| | | | | | | | instead of at the top-level. Also, don't set NO_INSTALL=1 for c-index-test. llvm-svn: 102724
* Add -o /dev/null to some tests which don't care about their output.Dan Gohman2010-04-306-6/+6
| | | | llvm-svn: 102722
* Apply a patch from Jan Sjodin to fix a compiler abort on vectorDan Gohman2010-04-301-9/+24
| | | | | | | comparisons sign-extended to a different bitwidth than the comparison operands. llvm-svn: 102721
* Regenerate.Daniel Dunbar2010-04-301-1/+2
| | | | llvm-svn: 102720
* Default OPTIMIZE_OPTION to -O2 on FreeBSD, at the request of the Clang/FreeBSDDaniel Dunbar2010-04-301-0/+1
| | | | | | folks. LLVM/Clang is miscompiled by the standard GCC at -O3. llvm-svn: 102719
* SmallBitVector: Rework find_first/find_next and tweak test to test them (at ↵Benjamin Kramer2010-04-302-16/+15
| | | | | | least on 64 bit platforms). llvm-svn: 102712
* Fixed incorrect type of alloca (GNU runtime).David Chisnall2010-04-301-2/+5
| | | | llvm-svn: 102711
* Add calling convention related attributes to related declaration. Mark ↵Abramo Bagnara2010-04-304-19/+73
| | | | | | attributes invalid on type related checking so to add them to declarations only when everything is ok. llvm-svn: 102710
* Implement a read/write operator[] for SmallBitVector with a proxy class.Benjamin Kramer2010-04-302-3/+43
| | | | llvm-svn: 102709
* Make sure SmallBitVector actually uses the small case and fix latent bugs.Benjamin Kramer2010-04-301-67/+82
| | | | | | - We can't use PointerIntPair here since we require the discrimination bit to be in the LSB. llvm-svn: 102707
* Attribute noreturn is now put in declaration attributes. Fixed a double ↵Abramo Bagnara2010-04-303-18/+18
| | | | | | warning generation. llvm-svn: 102705
* An edge from a call expression to the exit block is only an abnormal edgeJohn McCall2010-04-302-1/+11
| | | | | | | | | | | if *none* of the successors of the call expression is the exit block. This matters when a call of bool type is the condition of (say) a while loop in a function with no statements after the loop. This *can* happen in C, but it's much more common in C++ because of overloaded operators. Suppresses some substantial number of spurious -Wmissing-noreturn warnings. llvm-svn: 102696
* Fix ADL for types declared in transparent decls, from Alp Toker!Douglas Gregor2010-04-302-18/+31
| | | | llvm-svn: 102695
* Fix test.Evan Cheng2010-04-301-2/+2
| | | | llvm-svn: 102694
* Introduce a sequence number into class template partialDouglas Gregor2010-04-305-40/+51
| | | | | | | | | | | specializations, which keeps track of the order in which they were originally declared. We use this number so that we can always walk the list of partial specializations in a predictable order during matching or template instantiation. This also fixes a failure in Boost.Proto, where SourceManager::isBeforeInTranslationUnit was behaving poorly in inconsistent ways. llvm-svn: 102693
* Account for the VTT argument when making an implicit copy constructor forJohn McCall2010-04-302-1/+25
| | | | | | | | | a class with virtual bases. Just a patch until Sema starts (correctly) doing most of this analysis. Fixes PR 6622. llvm-svn: 102692
* When we start the definition of a class template, set theDouglas Gregor2010-04-303-0/+22
| | | | | | | | | InjectedClassNameType's Decl to point at the definition. It's a little messy, but we do the same thing with classes and their record types, since much of Clang expects that the TagDecl* one gets out of a type is the definition. Fixes several Boost.Proto failures. llvm-svn: 102691
* Remove unused trait.Zhongxing Xu2010-04-301-9/+0
| | | | llvm-svn: 102690
* Refactor the AnalysisConsumer to analyze functions after the whole Zhongxing Xu2010-04-307-148/+82
| | | | | | | | | | | | | | | | | | | | | | | | | translation unit is parsed. This enables us to inline some calls when still analyzing one function at a time. Actions are classified into Function, CXXMethod, ObjCMethod, ObjCImplementation. This does not hurt performance much. The analysis time for sqlite3.c: before: real 17m52.440s user 17m49.460s sys 0m2.010s after: real 18m0.500s user 17m56.900s sys 0m2.330s DisplayProgress option is broken now. -inine-call action is removed. It will be reenabled in another form, perhaps as an indenpendant option. llvm-svn: 102689
* Fix a tentative-parse error with unqualified template ids in cast expressions.John McCall2010-04-302-3/+19
| | | | | | Also resolve a long-working FIXME in the test case I modified. llvm-svn: 102688
* Fix pasto in this testDouglas Gregor2010-04-301-1/+1
| | | | llvm-svn: 102687
* Add Clang version inspection macros. Fixes PR6681.Douglas Gregor2010-04-303-2/+57
| | | | llvm-svn: 102686
OpenPOWER on IntegriCloud