summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add COFF reader.Michael J. Spencer2012-05-036-7/+425
| | | | | | | There are no tests for this yet because I still need to finish the YAML -> COFF converter so we don't get binary files checked in. llvm-svn: 156100
* Document the fact that you can repeat "-n" and similar options to make one ↵Jim Ingham2012-05-031-7/+10
| | | | | | breakpoint on multiple names. llvm-svn: 156098
* modern objc translation. objc_getClass() and objc_getMetaClass()Fariborz Jahanian2012-05-032-2/+11
| | | | | | | prototypes should both return `struct objc_class *`. // rdar://11375495 llvm-svn: 156097
* [driver - crash diagnostics] Only write the failing command in the script.Chad Rosier2012-05-031-1/+6
| | | | | | Part of rdar://11285725 llvm-svn: 156096
* Fix typo and avoid layout issue with almost-but-not-quite-fixed-width fonts.Richard Smith2012-05-031-2/+1
| | | | llvm-svn: 156095
* Minor copy-edits to clang::fallthrough attribute documentation.Richard Smith2012-05-031-9/+9
| | | | llvm-svn: 156094
* Canonicalize loop.Chad Rosier2012-05-031-1/+2
| | | | llvm-svn: 156093
* Disable -Wformat-extra-args for arguments defined in system headers.Bob Wilson2012-05-031-3/+6
| | | | | | | | | | | | | Some of the NSAssert macros in OS X 10.7 are implemented in a way that adds extra arguments that trigger the -Wformat-extra-args warning. Earlier versions of clang failed to detect those -Wformat issues, but now that clang is reporting those problems, we need to quiet them since there's nothing to be done to fix them. <rdar://problem/11317765> I don't know how to write a testcase for this. Suggestions welcome. Patch by Ted Kremenek! llvm-svn: 156092
* Silence unused-variable warning when assertions are disabled.Kaelyn Uhrain2012-05-031-0/+1
| | | | llvm-svn: 156091
* Honour CLANG_BUILD_EXAMPLES correctly, by setting the directory'sPeter Collingbourne2012-05-031-1/+1
| | | | | | EXCLUDE_FROM_ALL property. llvm-svn: 156090
* [analyzer] When promoting constant integers in a comparison, use the larger ↵Jordy Rose2012-05-032-20/+67
| | | | | | width of the two to avoid truncation. llvm-svn: 156089
* Fix AttributeError when using crashlog with verbose mode.Johnny Chen2012-05-031-1/+4
| | | | | | rdar://problem/11374653 llvm-svn: 156088
* Remove diagnostic groups and DefaultIgnore from notes.Richard Smith2012-05-031-7/+3
| | | | llvm-svn: 156087
* Add -Wimplicit-fallthrough warning flag, which warns on fallthrough betweenRichard Smith2012-05-0312-31/+635
| | | | | | | | | | | | cases in switch statements. Also add a [[clang::fallthrough]] attribute, which can be used to suppress the warning in the case of intentional fallthrough. Patch by Alexander Kornienko! The handling of C++11 attribute namespaces in this patch is temporary, and will be replaced with a cleaner mechanism in a subsequent patch. llvm-svn: 156086
* [analyzer] CString Checker: Do not split the path unless the userAnna Zaks2012-05-032-1/+12
| | | | | | | | | | specifically checks for equality to null. Enforcing this general practice, which keeps the analyzer less noisy, in the CString Checker. This change suppresses "Assigned value is garbage or undefined" warning in the added test case. llvm-svn: 156085
* Fix the type of SubClassMask.Jakob Stoklund Olesen2012-05-031-1/+1
| | | | llvm-svn: 156084
* Compress tables for getMatchingSuperRegClass().Jakob Stoklund Olesen2012-05-031-19/+67
| | | | | | | | Many register classes only have a few super-registers, so it is not necessary to keep individual bit masks for all possible sub-register indices. llvm-svn: 156083
* Fix a couple of cases of (innocuous) unmarked fallthrough. At least one of theseRichard Smith2012-05-032-0/+2
| | | | | | was unintentional. Found by -Wimplicit-fallthrough, patch by Alexander Kornienko! llvm-svn: 156082
* In StringLiteralParser::init, make sure we emit an error whenArgyrios Kyrtzidis2012-05-033-14/+15
| | | | | | | | failing to lex the string, as suggested by Eli. Part of rdar://11305263. llvm-svn: 156081
* Add the half type to the LLVM IR vim syntax highlighting.Owen Anderson2012-05-031-1/+1
| | | | llvm-svn: 156080
* [driver crash diagnostics] Remove more flags that reference absolute paths thatChad Rosier2012-05-031-3/+16
| | | | | | | aren't necessary to reproduce the clang crash. Part of rdar://11285725 llvm-svn: 156079
* objective-c: warn for properties being default synthesizedFariborz Jahanian2012-05-033-17/+30
| | | | | | | under -Wobjc-missing-property-synthesis which must be opted-in. // rdar://11295716 llvm-svn: 156078
* Fixed disassembler for vstm/vldm ARM VFP instructions.Silviu Baranga2012-05-032-4/+33
| | | | llvm-svn: 156077
* Don't override subreg functions in targets without subregisters.Jakob Stoklund Olesen2012-05-032-44/+46
| | | | | | | | Some targets have no sub-registers at all. Use the TargetRegisterInfo versions of composeSubRegIndices(), getSubClassWithSubReg(), and getMatchingSuperRegClass() for those targets. llvm-svn: 156075
* Correctly constify clang::CXXMemberCallExpr::getRecordDecl()David Blaikie2012-05-032-2/+2
| | | | llvm-svn: 156074
* Extensions of Hexagon V4 instructions.Sirish Pande2012-05-039-1339/+4107
| | | | | | This adds new instructions for Hexagon V4 architecture. llvm-svn: 156071
* replace 'break's with 'return 0' in visitCallInst code for objectsize, since ↵Nuno Lopes2012-05-031-5/+5
| | | | | | | | there is no need to fallback to visitCallSite. This gives a 0.9% in a test case llvm-svn: 156069
* Use correct variable in this example. Pointed out by waynix on IRC.Duncan Sands2012-05-031-1/+1
| | | | llvm-svn: 156067
* Change std::abs from a template function to three overloads for float, ↵Howard Hinnant2012-05-031-3/+10
| | | | | | double and long double. llvm-svn: 156064
* Test case Clang::Driver/debug-options-as.c depends on the integrated ↵Simon Atanasyan2012-05-031-2/+4
| | | | | | assembler. Turn it on explicitly on all platforms by the "-integrated-as" option. llvm-svn: 156063
* [analyzer] Equality ops are like relational ops in that the arguments ↵Jordy Rose2012-05-033-2/+73
| | | | | | | | shouldn't be converted to the result type. Fixes PR12206 and dupe PR12510. This was probably the original intent of r133041 (also me, a year ago). llvm-svn: 156062
* [analyzer] Fix RUN line and general cleanup for additive folding tests.Jordy Rose2012-05-032-30/+30
| | | | llvm-svn: 156061
* Use 'unsigned' instead of 'int' in a few places dealing with counts of ↵Craig Topper2012-05-031-3/+3
| | | | | | vector elements. llvm-svn: 156060
* Fix 256-bit vpshuflw and vpshufhw immediate encoding to handle undefs in the ↵Craig Topper2012-05-033-22/+37
| | | | | | lower half correctly. Missed in r155982. llvm-svn: 156059
* Rip out old code for finding libraries in GCC's directories.Bob Wilson2012-05-033-83/+0
| | | | llvm-svn: 156058
* [PCH] Clear switch case IDs when deserializing a objc method body.Argyrios Kyrtzidis2012-05-032-0/+18
| | | | | | Fixes rdar://11353109 & http://llvm.org/bugs/show_bug.cgi?id=12689 llvm-svn: 156056
* [analyzer] Conjure a symbol to ensure we can identify pointer arithmeticAnna Zaks2012-05-032-0/+27
| | | | | | | | | | | | We need to identify the value of ptr as ElementRegion (result of pointer arithmetic) in the following code. However, before this commit '(2-x)' evaluated to Unknown value, and as the result, 'p + (2-x)' evaluated to Unknown value as well. int *p = malloc(sizeof(int)); ptr = p + (2-x); llvm-svn: 156052
* [analyzer] Do not assert on constructing SymSymExpr with diff types.Anna Zaks2012-05-033-7/+18
| | | | | | | The resulting type info is stored in the SymSymExpr, so no reason not to support construction of expression with different subexpression types. llvm-svn: 156051
* [analyzer] Add a complexity bound on history tracking.Anna Zaks2012-05-034-3/+36
| | | | | | (Currently, this is only relevant for tainted data.) llvm-svn: 156050
* [analyzer] Revert the functional part of r155944. Anna Zaks2012-05-032-7/+3
| | | | | | | | The change resulted in multiple issues on the buildbot, so it's not ready for prime time. Only enable history tracking for tainted data(which is experimental) for now. llvm-svn: 156049
* Fix two-address pass's aggressive instruction commuting heuristics. It's meantEvan Cheng2012-05-033-17/+28
| | | | | | | | | | | | | | | | | | | | | | to catch cases like: %reg1024<def> = MOV r1 %reg1025<def> = MOV r0 %reg1026<def> = ADD %reg1024, %reg1025 r0 = MOV %reg1026 By commuting ADD, it let coalescer eliminate all of the copies. However, there was a bug in the heuristics where it ended up commuting the ADD in: %reg1024<def> = MOV r0 %reg1025<def> = MOV 0 %reg1026<def> = ADD %reg1024, %reg1025 r0 = MOV %reg1026 That did no benefit but rather ensure the last MOV would not be coalesced. rdar://11355268 llvm-svn: 156048
* Merge x86-64-abi-sret-vs-2word-struct-param.cpp into the genericJohn McCall2012-05-032-29/+32
| | | | | | | | x86_64-arguments.cpp test file and be sure to test the coerced case as well. Thanks to Wei-Ren Chen for bringing this test to my attention. llvm-svn: 156047
* Added TargetRegisterInfo::getAllocatableClass.Andrew Trick2012-05-034-8/+45
| | | | | | | | | | The ensures that virtual registers always belong to an allocatable class. If your target attempts to create a vreg for an operand that has no allocatable register subclass, you will crash quickly. This ensures that targets define register classes as intended. llvm-svn: 156046
* Fix a note without a SourceLocation.Richard Trieu2012-05-032-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | #define TEST int y; int x = y; void foo() { TEST } -Wuninitialized gives this warning: invalid-loc.cc:4:3: warning: variable 'y' is uninitialized when used here [-Wuninitialized] TEST ^~~~ invalid-loc.cc:2:29: note: expanded from macro 'TEST' #define TEST int y; int x = y; ^ note: initialize the variable 'y' to silence this warning 1 warning generated. The second note lacks filename, line number, and code snippet. This change will remove the fixit and only point to variable declaration. invalid-loc.cc:4:3: warning: variable 'y' is uninitialized when used here [-Wuninitialized] TEST ^~~~ invalid-loc.cc:2:29: note: expanded from macro 'TEST' #define TEST int y; int x = y; ^ invalid-loc.cc:4:3: note: variable 'y' is declared here TEST ^ invalid-loc.cc:2:14: note: expanded from macro 'TEST' #define TEST int y; int x = y; ^ 1 warning generated. llvm-svn: 156045
* Adding a new 'type category disable *' feature that disables all categories ↵Enrico Granata2012-05-035-13/+156
| | | | | | - This is intended as a quick kill switch for data formatters for cases where the user wants as little extra processing as possible to be done on their target, or to override major data formatters bug, should they occur llvm-svn: 156044
* In StringLiteralParser::init(), fail gracefully if the string isArgyrios Kyrtzidis2012-05-031-1/+6
| | | | | | | | | not as we expect; it may be due to racing issue of a file coming from PCH changing after the PCH is loaded. rdar://11353109 llvm-svn: 156043
* modern objective-c translator: Fix destructor def.Fariborz Jahanian2012-05-021-1/+1
| | | | | | for __NSContainer_literal. llvm-svn: 156035
* Whitespace cleanup.Bill Wendling2012-05-021-87/+80
| | | | llvm-svn: 156034
* Add commas to for loop warning to separate variable names.Richard Trieu2012-05-022-6/+6
| | | | llvm-svn: 156033
* [docs] Include the Kaleidescope tutorial in the Sphinx docs build.Daniel Dunbar2012-05-0220-52/+26
| | | | llvm-svn: 156032
OpenPOWER on IntegriCloud