summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Addressing mode 6 (load/store) instructions can't encode an immediate offsetJim Grosbach2010-01-061-1/+4
| | | | | | for stack references. llvm-svn: 92871
* When suggesting a typo correction for an @implementation without aDouglas Gregor2010-01-063-2/+12
| | | | | | | | | | corresponding @interface, provide a note showing which interface we're referring to. This note has the fix-it hint on it. Also, don't automatically apply fix-it hints for notes. They're meant to express fix-its that would change semantics. llvm-svn: 92870
* Change clang_getDeclExtent() to have the endpoint point to the last ↵Ted Kremenek2010-01-063-53/+73
| | | | | | character in the last token. llvm-svn: 92869
* Test case for rewriting of __weak byref objects.Fariborz Jahanian2010-01-061-0/+15
| | | | llvm-svn: 92868
* Move the allocation of designators in DesignatedInitExpr to theDouglas Gregor2010-01-064-16/+28
| | | | | | ASTContext. Fixes <rdar://problem/7495428>. llvm-svn: 92867
* Don't assert when dealing with unsigned casts of lvalues. Fixes PR5961.John McCall2010-01-062-6/+19
| | | | llvm-svn: 92866
* Anti-dependency breaking needs to be careful regarding instructions withJim Grosbach2010-01-062-3/+9
| | | | | | multiple register definitions. llvm-svn: 92864
* Add test from PR5913, which has already been fixedDouglas Gregor2010-01-061-0/+13
| | | | llvm-svn: 92863
* Derive tighter ranges for & and >> in the conversion-checking code.John McCall2010-01-062-6/+48
| | | | llvm-svn: 92862
* Add testcase for PR5817, although the bug was already fixedDouglas Gregor2010-01-061-0/+4
| | | | llvm-svn: 92858
* Fix linkage for RTTI names by re-using the logic for computing theDouglas Gregor2010-01-063-43/+26
| | | | | | | | linkage of vtables. Before this, we were emitting RTTI names for template instantiations with strong external linkage rather than with weak ODR linkage. llvm-svn: 92857
* Fix a bug when property is redeclared in multipleFariborz Jahanian2010-01-062-0/+50
| | | | | | | continuation classes and its original declaration is imported from a protocol. This fixes radar 7509234. llvm-svn: 92856
* Fix marking of virtual members for nested classes whose first non-pure ↵Douglas Gregor2010-01-065-50/+102
| | | | | | virtual function has a body inlined in the class llvm-svn: 92855
* Move the object size intrinsic optimization to inst-combine and makeEric Christopher2010-01-062-24/+12
| | | | | | it work for any integer size return type. llvm-svn: 92853
* Comment.Evan Cheng2010-01-061-0/+3
| | | | llvm-svn: 92850
* Teach dag combine to fold the following transformation more aggressively:Evan Cheng2010-01-0612-120/+339
| | | | | | | | | | (OP (trunc x), (trunc y)) -> (trunc (OP x, y)) Unfortunately this simple change causes dag combine to infinite looping. The problem is the shrink demanded ops optimization tend to canonicalize expressions in the opposite manner. That is badness. This patch disable those optimizations in dag combine but instead it is done as a late pass in sdisel. This also exposes some deficiencies in dag combine and x86 setcc / brcond lowering. Teach them to look pass ISD::TRUNCATE in various places. llvm-svn: 92849
* Fix for PR5691David Chisnall2010-01-061-1/+1
| | | | llvm-svn: 92846
* Fix struct/class mismatchDouglas Gregor2010-01-061-1/+1
| | | | llvm-svn: 92841
* Make sure that the key-function computation produces the correctDouglas Gregor2010-01-062-10/+38
| | | | | | | | result for a nested class whose first non-pure virtual member function has an inline body. Previously, we were checking for the key function before we had seen the (delayed) inline body. llvm-svn: 92839
* When parsing function-local metadata, create a function-local MDNodeVictor Hernandez2010-01-062-10/+16
| | | | llvm-svn: 92838
* 80 column and whitespace cleanupJim Grosbach2010-01-064-95/+108
| | | | llvm-svn: 92837
* Fix a README item: have functionattrs look through selects andDuncan Sands2010-01-063-42/+69
| | | | | | | | | phi nodes when deciding which pointers point to local memory. I actually checked long ago how useful this is, and it isn't very: it hardly ever fires in the testsuite, but since Chris wants it here it is! llvm-svn: 92836
* Improve the diagnostics used to report implicitly-generated class membersJohn McCall2010-01-0632-75/+117
| | | | | | | | | as parts of overload sets. Also, refer to constructors as 'constructors' rather than functions. Adjust a lot of tests. llvm-svn: 92832
* Formatting.Mikhail Glushenkov2010-01-061-2/+2
| | | | llvm-svn: 92831
* Fixed malformed -*- lines in PBQP headers.Lang Hames2010-01-069-9/+9
| | | | llvm-svn: 92830
* Partially address a README by having functionattrs consider calls toDuncan Sands2010-01-066-9/+60
| | | | | | | | | | memcpy, memset and other intrinsics that only access their arguments to be readnone if the intrinsic's arguments all point to local memory. This improves the testcase in the README to readonly, but it could in theory be made readnone, however this would involve more sophisticated analysis that looks through the memcpy. llvm-svn: 92829
* Fix (invalid) may-be-uninitialized warning.Daniel Dunbar2010-01-061-1/+2
| | | | llvm-svn: 92828
* Add missing CINDEX_LINKAGE.Daniel Dunbar2010-01-061-4/+5
| | | | llvm-svn: 92827
* This is testing a darwin specific feature, so only turnDuncan Sands2010-01-061-0/+2
| | | | | | it on for darwin (it fails on linux). llvm-svn: 92826
* Add _clang_getDeclExtent to export list.Daniel Dunbar2010-01-061-0/+1
| | | | llvm-svn: 92825
* tweaks suggested by DuncanChris Lattner2010-01-061-7/+7
| | | | llvm-svn: 92824
* Significantly rework the calculation of effective integer-expression rangesJohn McCall2010-01-063-176/+280
| | | | | | | | | | | | for -Wsign-compare and -Wconversion, and use that coordinated logic to drive both diagnostics. The new logic works more transparently with implicit conversions, conditional operators, etc., as well as bringing -Wconversion's ability to deal with pseudo-closed operations (e.g. arithmetic on shorts) to -Wsign-compare. Fixes PRs 5887, 5937, 5938, and 5939. llvm-svn: 92823
* Revert my available_externally vtables experiment. It's breaking the ↵Douglas Gregor2010-01-062-3/+8
| | | | | | LLVM-with-Clang build with linker errors that I have yet to investigate. llvm-svn: 92822
* Make our marking of virtual members functions in a class beDouglas Gregor2010-01-067-69/+66
| | | | | | | | | | | | | | | | | | | | | deterministic and work properly with templates. Once a class that needs a vtable has been defined, we now do one if two things: - If the class has no key function, we place the class on a list of classes whose virtual functions will need to be "marked" at the end of the translation unit. The delay until the end of the translation unit is needed because we might see template specializations of these virtual functions. - If the class has a key function, we do nothing; when the key function is defined, the class will be placed on the aforementioned list. At the end of the translation unit, we "mark" all of the virtual functions of the classes on the list as used, possibly causing template instantiation and other classes to be added to the list. This gets LLVM's lib/Support/CommandLine.cpp compiling again. llvm-svn: 92821
* Add enhanced crash reporter breadcrumbs for ↵Ted Kremenek2010-01-061-0/+54
| | | | | | clang_createTranslationUnitFromSourceFile(). llvm-svn: 92820
* Reorder to avoid invalidating idx which is an accessor into VCall.Mike Stump2010-01-061-1/+1
| | | | llvm-svn: 92819
* Reenable debug info on PPC. Works well enough toDale Johannesen2010-01-061-0/+1
| | | | | | bootstrap. llvm-svn: 92818
* Make sure debug info hook gets called when emittingDale Johannesen2010-01-061-12/+11
| | | | | | synonyms for PPC. llvm-svn: 92817
* Fix spelling.Mike Stump2010-01-061-1/+1
| | | | llvm-svn: 92816
* Teach instcombine's sext elimination logic to be more aggressive.Chris Lattner2010-01-063-39/+179
| | | | | | | | | | | | | | Previously, instcombine would only promote an expression tree to the larger type if doing so eliminated two casts. This is because a need to manually do the sign extend after the promoted expression tree with two shifts. Now, we keep track of whether the result of the computation is going to be properly sign extended already. If so, we can unconditionally promote the expression, which allows us to zap more sext's. This implements rdar://6598839 (aka gcc pr38751) llvm-svn: 92815
* Add <imp-def> and <imp-kill> operands when replacing virtual sub-register ↵Jakob Stoklund Olesen2010-01-063-18/+52
| | | | | | | | | | | | | | defs and kills. An instruction like this: %reg1097:1<def> = VMOVSR %R3<kill>, 14, %reg0 Must be replaced with this when substituting physical registers: %S0<def> = VMOVSR %R3<kill>, 14, %reg0, %D0<imp-def> llvm-svn: 92812
* The previous code could potentially cause a cycle. Allow ordering w.r.t. a 0 ↵Bill Wendling2010-01-061-2/+2
| | | | | | order. llvm-svn: 92810
* Per offline discussion with Doug, don't perform typo correction when we have ↵Ted Kremenek2010-01-061-0/+4
| | | | | | encountered a fatal error. On some files that are woefully wrong (missing headers) this can cause a 3x slowdown in some cases when parsing the file. It makes sense not to perform typo correction in this case because after a fatal error diagnostics will either be suppressed or not really make any sense. llvm-svn: 92809
* Do not diagnose method disguised as property setterFariborz Jahanian2010-01-062-2/+17
| | | | | | for a 'readonly' property. Fixes radar 7427072. llvm-svn: 92808
* Only check the ordering if there is an ordering for each nodes.Bill Wendling2010-01-061-2/+2
| | | | llvm-svn: 92807
* Add a semi-primitive form of scheduling via the "SDNode ordering" to theBill Wendling2010-01-051-0/+12
| | | | | | bottom-up scheduler. We prefer the lower order number. llvm-svn: 92806
* Add Expr::EvaluateAsBooleanCondition(), which does unprincipled folding toJohn McCall2010-01-052-1/+14
| | | | | | | try to evaluate an expression as a constant boolean condition. This has the same intended semantics as used in folding conditional operators. llvm-svn: 92805
* Remove unused variables.Ted Kremenek2010-01-051-2/+0
| | | | llvm-svn: 92804
* Remove deprecated function 'clang_getDeclSource()'. Use ↵Ted Kremenek2010-01-053-9/+0
| | | | | | 'clang_getDeclFile()' instead. llvm-svn: 92803
* Add C API hook 'clang_getDeclExtent()', which returns the source extent of a ↵Ted Kremenek2010-01-055-46/+107
| | | | | | declaration. This implements <rdar://problem/7280072>. llvm-svn: 92802
OpenPOWER on IntegriCloud