summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Triple::MinGW64 is deprecated and removed. We can use Triple::MinGW32 instead.NAKAMURA Takumi2011-02-176-16/+4
| | | | | | No one uses *-mingw64. mingw-w64 is represented as {i686|x86_64}-w64-mingw32. llvm-svn: 125742
* Fix whitespace.NAKAMURA Takumi2011-02-174-20/+19
| | | | llvm-svn: 125741
* Devirtualize Decl::getNextRedeclaration().Douglas Gregor2011-02-175-10/+91
| | | | llvm-svn: 125740
* Implement -Wenum-compare, which warns when comparing two enums ofChandler Carruth2011-02-174-4/+235
| | | | | | | | | | | different types. We omit the warning when the enum types are anonymous. Unlike GCC, this warning does not distinguish between C++ and C/ObjC for controling whether it is on by default, it is always on by default. Original patch contributed by Richard Trieu (@ Google), I fixed some style issues, and cleaned it up for submission. llvm-svn: 125739
* This has been implemented.Duncan Sands2011-02-171-10/+0
| | | | llvm-svn: 125738
* Simple little optimization to Decl::getCanonicalDecl(), eliminating some ↵Douglas Gregor2011-02-171-4/+4
| | | | | | heavyweight machinery and indirection that we don't need llvm-svn: 125737
* Devirtualize Decl::getSourceRange()Douglas Gregor2011-02-175-16/+38
| | | | llvm-svn: 125736
* Devirtualize Decl::getCanonicalDecl().Douglas Gregor2011-02-175-9/+32
| | | | llvm-svn: 125735
* Transform "A + B >= A + C" into "B >= C" if the adds do not wrap. Likewise ↵Duncan Sands2011-02-172-93/+125
| | | | | | | | | for some variations (some of these were already present so I unified the code). Spotted by my auto-simplifier as occurring a lot. llvm-svn: 125734
* Step #1/N of implementing support for __label__: split labels intoChris Lattner2011-02-1739-384/+294
| | | | | | | | | | | | | | | | | | | LabelDecl and LabelStmt. There is a 1-1 correspondence between the two, but this simplifies a bunch of code by itself. This is because labels are the only place where we previously had references to random other statements, causing grief for AST serialization and other stuff. This does cause one regression (attr(unused) doesn't silence unused label warnings) which I'll address next. This does fix some minor bugs: 1. "The only valid attribute " diagnostic was capitalized. 2. Various diagnostics printed as ''labelname'' instead of 'labelname' 3. This reduces duplication of label checking between functions and blocks. Review appreciated, particularly for the cindex and template bits. llvm-svn: 125733
* Devirtualize Decl::getBody() and Decl::hasBody().Douglas Gregor2011-02-174-5/+23
| | | | llvm-svn: 125731
* De-virtualize Decl::isOutOfLine().Douglas Gregor2011-02-174-7/+17
| | | | llvm-svn: 125730
* When printing a qualified type, look through a substituted templateDouglas Gregor2011-02-177-13/+73
| | | | | | | | | | parameter type to see what's behind it, so that we don't end up printing silly things like "float const *" when "const float *" would make more sense. Also, replace the pile of "isa" tests with a simple switch enumerating all of the cases, making a few more obvious cases use prefix qualifiers. llvm-svn: 125729
* Switch to SmallVector in SimpleRegisterCoalescing for a 3.5% speedup on 403.gcc.Cameron Zwarich2011-02-171-3/+3
| | | | llvm-svn: 125728
* Adjust indenting of arguments.Cameron Zwarich2011-02-171-3/+3
| | | | llvm-svn: 125727
* Return Changed from SplitPHIEdges rather than always returning true.Cameron Zwarich2011-02-171-1/+1
| | | | llvm-svn: 125726
* lit/TestingConfig.py: Add the environment variable PRINTF_EXPONENT_DIGITS as ↵NAKAMURA Takumi2011-02-171-0/+1
| | | | | | | | | | workaround [PR6745] for mingw's tests. Danil Malyshev suggested this. FIXME: It does not improve MSVC's issue. [Danil Malyshev] Defining PRINTF_EXPONENT_DIGITS env is the suggested way to make MinGW ANSI/POSIX compatible. This is not only about the case we are discussing, but in general, I'd like to have explicitly defined compatibility mode for all the tests running on MinGW. llvm-svn: 125725
* simplify a bit.Chris Lattner2011-02-172-4/+2
| | | | llvm-svn: 125724
* tidy upChris Lattner2011-02-171-2/+2
| | | | llvm-svn: 125723
* Improve parser recovery in "for" statements, from Richard Smith!Douglas Gregor2011-02-172-7/+38
| | | | llvm-svn: 125722
* Add serialization for Expr* arguments for attributes to clang tablegen files.Alexis Hunt2011-02-171-0/+2
| | | | | | Patch thanks to Zach Anderson. llvm-svn: 125721
* I will not hold on to temporary StringRefs.Douglas Gregor2011-02-171-50/+51
| | | | | | | | | | | | | | | I will not hold on to temporary StringRefs. I will not hold on to temporary StringRefs. I will not hold on to temporary StringRefs. I will not hold on to temporary StringRefs. I will not hold on to temporary StringRefs. I will not hold on to temporary StringRefs. I will not hold on to temporary StringRefs. I will not hold on to temporary StringRefs. I will not hold on to temporary StringRefs. I will not hold on to temporary StringRefs. llvm-svn: 125718
* When Parser::ParseExpressionList isn't given a completer, fall back toDouglas Gregor2011-02-172-0/+16
| | | | | | | normal "expression" completion. Fixes the most annoying code-completion bug I've found. llvm-svn: 125715
* Fix PR9025 and add a diagnostic (and sometimes a fixit) for an overloadedMatt Beaumont-Gay2011-02-173-6/+77
| | | | | | | function name used as the base of a member expression. Early feedback from Chandler Carruth, and code review from Nick Lewycky. llvm-svn: 125714
* Bump up IdentifierInfo::ObjCOrBuiltinID to use 11 bits instead of 10. Fixes ↵Ted Kremenek2011-02-171-2/+2
| | | | | | | | PR 9231. Apparently we can blow out the number of builtin IDs on FreeBSD with only 10 bits. llvm-svn: 125713
* Begin overhaul of scan-build/ccc-analyzer's handling of checker options.Ted Kremenek2011-02-172-119/+61
| | | | | | | | We now rely on 'clang --analyze' to provide the default set of checkers. We're still working on the new '-analyzer-checker <checker>' interface, and once that's ready we'll wire it up to scan-build. llvm-svn: 125712
* preserve NUW/NSW when transforming add x,xChris Lattner2011-02-172-2/+15
| | | | llvm-svn: 125711
* filecheckizeChris Lattner2011-02-171-3/+14
| | | | llvm-svn: 125710
* Fix thinko, basic blocks are SESE. The exits may have many edges though.Nick Lewycky2011-02-171-1/+1
| | | | llvm-svn: 125709
* Disable default synthesized properties until we can properly re-evaluate the ↵Ted Kremenek2011-02-171-2/+1
| | | | | | feature. llvm-svn: 125708
* fix clang -MM output to escape spaces in filenames. This seems to beChris Lattner2011-02-171-7/+18
| | | | | | the only character that GCC escapes. PR9224. llvm-svn: 125707
* Modified version of Marco Minutoli's host arch patch.Greg Clayton2011-02-171-14/+8
| | | | llvm-svn: 125706
* update this test now that reassociate isn't stripping nsw's pointlessly.Chris Lattner2011-02-171-2/+2
| | | | llvm-svn: 125705
* Convert MaxFieldAlignment to CharUnits from bits. No change in functionalityKen Dyck2011-02-171-18/+23
| | | | | | intended. llvm-svn: 125704
* Add comment for the helper method WriteCoreRegisterWithFlags().Johnny Chen2011-02-171-0/+3
| | | | llvm-svn: 125703
* add some notes on compares + binops. Remove redundant entries.Chris Lattner2011-02-171-20/+47
| | | | llvm-svn: 125702
* Refactoring. Wrap the following pseudocode from the ARM Architecture ↵Johnny Chen2011-02-172-117/+90
| | | | | | | | | | | | | | | | | | | | | Reference Manul: // if d == 15 then // Can only occur for encoding A1 // ALUWritePC(result); // setflags is always FALSE here // else // R[d] = result; // if setflags then // APSR.N = result<31>; // APSR.Z = IsZeroBit(result); // APSR.C = carry; // // APSR.V unchanged into a helper method WriteCoreRegisterWithFlags, and modified the existing methods to take advantage of it. Plus add two emulation methods (declaration only for now) for ORR (immediate) and ORR (register). llvm-svn: 125701
* fix PR9215, preventing -reassociate from clearing nsw/nuw whenChris Lattner2011-02-172-3/+11
| | | | | | it swaps the LHS/RHS of a single binop. llvm-svn: 125700
* Improve diagnostics when property names an object type ofFariborz Jahanian2011-02-173-0/+30
| | | | | | a forward class. // rdar://8851803 llvm-svn: 125699
* Implement code completion results for the Objective-C Key-Value CodingDouglas Gregor2011-02-174-21/+772
| | | | | | (KVC) and Key-Value Observing (KVO) protocols. llvm-svn: 125696
* Do not use constants from stdint.h that we cannot portably provide on all ↵Stephen Wilson2011-02-171-4/+2
| | | | | | platforms. llvm-svn: 125695
* Ensure that the NRVO flag has some block to insert into. Fixes PR9178!Nick Lewycky2011-02-162-1/+19
| | | | llvm-svn: 125694
* Fix assertion failure in -Warray-bounds on template parameters used as arrays.Ted Kremenek2011-02-162-1/+8
| | | | llvm-svn: 125693
* Clean up a bit of the type getting code where lldb_private:Type now hasGreg Clayton2011-02-1612-105/+48
| | | | | | | | | | | | | | clang_type_t GetClangFullType(); // Get a completely defined clang type clang_type_t GetClangLayoutType(); // Get a clang type that can be used for type layout clang_type_t GetClangForwardType(); // A type that can be completed if needed, but is more efficient. llvm-svn: 125691
* Block rewriting bug. Don't take address of captured Fariborz Jahanian2011-02-162-1/+52
| | | | | | | byref variables again when passing them to inner blocks. // rdar://9006279 llvm-svn: 125690
* Add emulation methods for ROR (immediate), ROR (register), and RRX.Johnny Chen2011-02-163-6/+127
| | | | | | | | | | Turns out that they can be funneled through the helper methods EmulateShiftImm()/ EmulateShiftReg() as well. Modify EmulateShiftImm() to handle SRType_ROR and SRType_RRX. And fix a typo in the impl of utility Shift_C() in ARMUtils.h. llvm-svn: 125689
* Placate Doug and change capitalization of diagnostic note.Ted Kremenek2011-02-162-3/+3
| | | | llvm-svn: 125688
* Makes most methods in SVals.h conform to the naming guide. ReviewedZhanyong Wan2011-02-1618-47/+46
| | | | | | by kremenek. llvm-svn: 125687
* Add code to emulate STRB (Thumb) instruction.Caroline Tice2011-02-162-1/+147
| | | | llvm-svn: 125686
* 3000 Sema diagnostics should be enough for anyone.Chandler Carruth2011-02-161-1/+1
| | | | llvm-svn: 125684
OpenPOWER on IntegriCloud