summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix predicates for Thumb co-processor instructions.Jim Grosbach2011-07-135-119/+110
| | | | | | | They're all Thumb2 only, not just some of them. More refactoring cleanup coming. llvm-svn: 135081
* Only keep the global split candidates that work out.Jakob Stoklund Olesen2011-07-131-12/+15
| | | | | | | | | Some pysical registers create split solutions that would spill anywhere. They should not even be considered in future multi-way global splits. This does not affect code generation (yet). llvm-svn: 135080
* Refactor out checking for displacements on x86-64 addressing modes. No ↵Eli Friedman2011-07-131-46/+34
| | | | | | | | functionality change. Refactoring in preparation for an additional safety check in FoldOffsetIntoAddress. Part of <rdar://problem/9763308>. llvm-svn: 135079
* Testcases for ARM assembly BX/BXJ instructions.Jim Grosbach2011-07-131-2/+24
| | | | llvm-svn: 135078
* Fix encoding for ARM BXJ instruction.Jim Grosbach2011-07-131-3/+5
| | | | llvm-svn: 135077
* Fix encoding of predicate bits on ARM BX_pred.Jim Grosbach2011-07-131-3/+2
| | | | llvm-svn: 135076
* format string checking: long and int have the same widths on 32-bit, so we ↵Ted Kremenek2011-07-132-10/+23
| | | | | | | | shouldn't warn about using an "int" format specifier with a "long" type in 32-bit. llvm-svn: 135075
* Move the InterferenceCache cursor into the GlobalSplitCand struct.Jakob Stoklund Olesen2011-07-132-20/+23
| | | | | | | This is in preparation of supporting multiple global split candidates in a single live range split operation. llvm-svn: 135074
* Enforce access control for the destructor in a new[] expression and markJohn McCall2011-07-133-1/+33
| | | | | | | it as used. Otherwise, we can fail to instantiate or validate the destructor, which can lead to crashes in IR gen like PR10351. llvm-svn: 135073
* Testcases for ARM assembly BLX/BL instructions.Jim Grosbach2011-07-131-0/+17
| | | | llvm-svn: 135072
* Range checking for 16-bit immediates in ARM assembly.Jim Grosbach2011-07-134-5/+25
| | | | llvm-svn: 135071
* Revert r135042. As Chris pointed out, it had no effect, and was based onJay Foad2011-07-131-5/+0
| | | | | | a complete misunderstanding of the code. llvm-svn: 135070
* Add @expectedFailure decorator for test_target_variable_command_with_dsym().Johnny Chen2011-07-131-1/+1
| | | | | | rdar://problem/9763907 llvm-svn: 135069
* Fix up TargetLoweringObjectFile ctors to properly initialize fields.Evan Cheng2011-07-133-29/+70
| | | | llvm-svn: 135068
* [arcmt] Add weak/unsafe_unretained for "@property (readonly)" when we are ↵Argyrios Kyrtzidis2011-07-133-5/+7
| | | | | | @synthesizing it. llvm-svn: 135067
* Give the ARM BKPT instruction the right operand type.Jim Grosbach2011-07-132-5/+5
| | | | | | The immediate is of limited range and the operand type should reflect that. llvm-svn: 135066
* [arcmt] For properties rewrite 'assign' -> 'weak or unsafe_unretained', ↵Argyrios Kyrtzidis2011-07-1311-162/+268
| | | | | | | | 'retain' -> 'strong', and add 'weak or unsafe_unretained' when 'assign' is missing. rdar://9496219&9602589. llvm-svn: 135065
* Change test case, one that actually failed before my commit.Evan Cheng2011-07-131-1/+6
| | | | llvm-svn: 135064
* Add tests for ARM parsing of 'BKPT' instruction.Jim Grosbach2011-07-132-2/+10
| | | | llvm-svn: 135063
* Fix copy-pasto.Jim Grosbach2011-07-131-1/+1
| | | | llvm-svn: 135062
* Add tests for ARM parsing of 'BIC' instruction.Jim Grosbach2011-07-131-0/+58
| | | | llvm-svn: 135061
* Add some FIXMEs.Jim Grosbach2011-07-131-0/+16
| | | | | | | Keeping the instructions in alphabetical order, just like in the ARM ARM. Adding FIXMEs for skipped instructions when adding tests out of order. llvm-svn: 135060
* Revert accidental commit.Evan Cheng2011-07-131-2/+0
| | | | llvm-svn: 135059
* It's not safe to fold (fptrunc (sqrt (fpext x))) to (sqrtf x) if there is ↵Evan Cheng2011-07-133-3/+23
| | | | | | another use of sqrt. rdar://9763193 llvm-svn: 135058
* With -Wselector, don't warn about unimplemented optional methodFariborz Jahanian2011-07-132-5/+33
| | | | | | | used in @selector expression because, well, their implementation is optional. // rdar://9545564 llvm-svn: 135057
* Add tests for ARM parsing of 'AND' instruction.Jim Grosbach2011-07-131-0/+58
| | | | llvm-svn: 135056
* Improve ARM assembly parsing diagnostics a bit.Jim Grosbach2011-07-132-21/+76
| | | | | | | | | Catch potential cascading errors on a malformed so_reg operand and bail after the first error. Add some tests for the diagnostics we do want. llvm-svn: 135055
* Don't crash if defining -dealloc in a category.John McCall2011-07-132-3/+15
| | | | llvm-svn: 135054
* Add tests for ARM parsing of 'ADD' instructionJim Grosbach2011-07-131-0/+63
| | | | llvm-svn: 135053
* Destination register operand is optional for ADC and SBC ARM.Jim Grosbach2011-07-132-5/+60
| | | | llvm-svn: 135052
* In debugger mode, make ObjC message sends to unknown selectors returnJohn McCall2011-07-136-7/+35
| | | | | | | | | | __unknown_anytype, and rewrite such message sends correctly. I had to bite the bullet and actually add a debugger support mode for this one, which is a bit unfortunate, but there really isn't anything else I could imagine doing; this is clearly just debugger-specific behavior. llvm-svn: 135051
* objc++: Some level of covariance is allowed in ObjC properties.Fariborz Jahanian2011-07-133-8/+12
| | | | | | | Make it also available in ObjC++ propeties. Use common code for objc and objc++ so they don't diverge. // rdar://9740328 llvm-svn: 135050
* Flesh out ARM Parser support for shifted-register operands.Jim Grosbach2011-07-134-8/+153
| | | | | | | Now works for parsing register shifted register and register shifted immediate arithmetic instructions, including the 'rrx' rotate with extend. llvm-svn: 135049
* Re-relax conversion specifier checking for printf format strings and ↵Ted Kremenek2011-07-132-5/+6
| | | | | | conversion specifiers. My recent change was a mistake. llvm-svn: 135048
* 80 columns.Jim Grosbach2011-07-131-4/+5
| | | | llvm-svn: 135047
* Fix inversion in argument type checking for format strings with conversion ↵Ted Kremenek2011-07-132-2/+11
| | | | | | specifiers for character types. llvm-svn: 135046
* http://llvm.org/bugs/show_bug.cgi?id=10346Howard Hinnant2011-07-132-0/+58
| | | | llvm-svn: 135045
* Reverted to 134947. Once I got into it, I discovered there were too many ↵Howard Hinnant2011-07-133-309/+181
| | | | | | problems to fix in 135035. llvm-svn: 135044
* Update MCParsedAsmOperand debug methods.Jim Grosbach2011-07-136-9/+23
| | | | | | | | | | | Update the debug output interface for MCParsedAsmOperand to have a print() method which takes an output stream argument, an << operator which invokes the print method using the given stream, and a dump() method which prints the operand to the dbgs() stream. This makes the interface more consistent with the rest of LLVM, and more convenient to use at the debugger command line. llvm-svn: 135043
* Really cache function types and anonymous struct types.Jay Foad2011-07-131-0/+5
| | | | llvm-svn: 135042
* Convert InsertValueInst and ExtractValueInst APIs to use ArrayRef.Jay Foad2011-07-1325-424/+187
| | | | llvm-svn: 135040
* Add some bits that I found useful when converting InsertValueInst andJay Foad2011-07-131-1/+30
| | | | | | | ExtractValueInst APIs to use ArrayRef: a new constructor taking a (begin, end) range, and operators == and != for element-wise comparison. llvm-svn: 135039
* Okay, that rule about zero-length arrays applies to destroyingJohn McCall2011-07-136-60/+46
| | | | | | them, too. llvm-svn: 135038
* Add to RuntimeDyld support different object formatsDanil Malyshev2011-07-135-599/+694
| | | | llvm-svn: 135037
* Arrays are permitted to be zero-length in some situations.John McCall2011-07-133-27/+38
| | | | llvm-svn: 135036
* Implement the __nolocale functions properly so that they will work onAlexis Hunt2011-07-133-181/+309
| | | | | | | | | | | all platforms. Unfortunately a lot of this remains conditionally compiled so as not to break Apple's ABI. The new _LIBCPP_LOCALE__L_EXTENSIONS macro can be defined on other platforms that support _l suffixes for all functions in order to use them. llvm-svn: 135035
* Make the integer-range analysis recognize ^= correctly,John McCall2011-07-132-2/+26
| | | | | | | | | and (while I'm at it) teach it to grok the results of simple assignments. The first is PR10336. llvm-svn: 135034
* Convert the standard default-construction loops to use phis andJohn McCall2011-07-136-116/+172
| | | | | | partial destruction. llvm-svn: 135033
* per john's advice, speculatively lower uses of forward-declared enums toChris Lattner2011-07-131-5/+12
| | | | | | | i32. They almost always end up this way in the end anyway, and if we get lucky, this avoids generating some bitcasts. llvm-svn: 135032
* stop leaking all named struct types with an empty name. ThanksChris Lattner2011-07-133-8/+18
| | | | | | to Benjamin Kramer for steering me in the right direction here. llvm-svn: 135031
OpenPOWER on IntegriCloud