summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Rename TRI::getAllocationOrder() to getRawAllocationOrder().Jakob Stoklund Olesen2011-06-165-67/+51
| | | | | | | | | | | Also switch the return type to ArrayRef<unsigned> which works out nicely for ARM's implementation of this function because of the clever ArrayRef constructors. The name change indicates that the returned allocation order may contain reserved registers as has been the case for a while. llvm-svn: 133216
* Be sure to try a final ARC-production even in Objective-C++.John McCall2011-06-163-1/+13
| | | | llvm-svn: 133215
* Finish 2 sentences.Francois Pichet2011-06-162-2/+2
| | | | llvm-svn: 133214
* comment improvements.Chris Lattner2011-06-161-3/+5
| | | | llvm-svn: 133213
* Fix a regression introduced by r131955 which broke #include_next in subtle ↵Chris Lattner2011-06-161-1/+4
| | | | | | | | | situations because the Angled directories and the System directories were not being uniqued together, breaking #include_next. I'll see about a testcase, but it will be insane. llvm-svn: 133212
* code cleanups, no behavior change.Chris Lattner2011-06-162-66/+66
| | | | llvm-svn: 133211
* Don't use register classes larger than TLI->getRegClassFor(VT).Jakob Stoklund Olesen2011-06-162-2/+31
| | | | | | | | | | In Thumb mode we cannot handle GPR virtual registers, even though some instructions can. When isel is lowering a CopyFromReg, it should limit itself to subclasses of getRegClassFor(VT). <rdar://problem/9624323> llvm-svn: 133210
* For the purpose of @encode'ing, accept 'void' typeFariborz Jahanian2011-06-162-1/+6
| | | | | | | (even though it is incomplete type) because gcc says so. // rdar://9622422 llvm-svn: 133208
* Regenerate configure.Daniel Dunbar2011-06-161-3/+21
| | | | llvm-svn: 133207
* build/configure: Add support for --with-extra-ld-options flag (to provide extraDaniel Dunbar2011-06-163-0/+18
| | | | | | options just to pass to ld). llvm-svn: 133206
* Added LLVM_BUILD_MODE to cmake so that lit supports tests with REQUIRES: ↵Andrew Trick2011-06-162-1/+6
| | | | | | {buildmode}. llvm-svn: 133205
* o lldbutil.py:Johnny Chen2011-06-163-11/+18
| | | | | | | | | | | | | | | | For the print_stacktrace(thread, string_buffer = False) function, if we have debug info for a frame function, let's also emit the args for the current function. o TestFrameUtils.py: Add stronger assertTrue for frame0's args. o TestPrintStackTraces.py: Launch the inferior with ["abc", "xyz"] and expect '(int)argc=3' in the stack traces, since by design the inferior is built with debug info. llvm-svn: 133204
* Teach antidependency breakers to use RegisterClassInfo.Jakob Stoklund Olesen2011-06-165-33/+39
| | | | | | No functional change was intended. llvm-svn: 133202
* forward declare GraphTraits in Type.h instead of #includ'ing it.Chris Lattner2011-06-161-1/+1
| | | | llvm-svn: 133201
* cmake may require LIT_TOOLS_DIR.Andrew Trick2011-06-161-0/+1
| | | | | | Reviewed by chapuni. Sorry for breaking. llvm-svn: 133200
* cmake may require LIT_TOOLS_DIR.Andrew Trick2011-06-161-0/+1
| | | | | | Reviewed by chapuni. Sorry for breaking. llvm-svn: 133199
* change Type.h to forward declare ArrayRef instead of #including it.Chris Lattner2011-06-162-10/+14
| | | | llvm-svn: 133197
* Add a new warning when a NULL constant is used in arithmetic operations. ↵Richard Trieu2011-06-165-0/+204
| | | | | | | | The warning will fire on cases such as: int x = 1 + NULL; llvm-svn: 133196
* add some #includes that will soon be needed.Chris Lattner2011-06-162-0/+2
| | | | llvm-svn: 133195
* prune #includes.Chris Lattner2011-06-161-19/+5
| | | | llvm-svn: 133194
* Add some extra linker flags to LLDB.framework so we can track down why weGreg Clayton2011-06-161-0/+9
| | | | | | | aren't getting debug info from the liblldb-core.a file in our build server builds. llvm-svn: 133193
* move the address space into the subclass data field, saving a word on ↵Chris Lattner2011-06-162-5/+4
| | | | | | | | PointerType. This limits the # address spaces to 2^23, which should be good enough. llvm-svn: 133192
* tidy up some comments, store the 'isvararg' bit for FunctionType inChris Lattner2011-06-162-45/+35
| | | | | | the SubclassData field, saving a word. llvm-svn: 133191
* remove Type::getVAArgsPromotedType, which is dead, and tidy up a bit.Chris Lattner2011-06-163-20/+8
| | | | llvm-svn: 133190
* There's no need to be so picky about the particular register.Nick Lewycky2011-06-161-4/+4
| | | | llvm-svn: 133189
* Fix ARCOpt to insert releases on both successors of an invoke ratherDan Gohman2011-06-162-10/+94
| | | | | | than trying to insert them immediately after the invoke. llvm-svn: 133188
* Fix of a minor typo.Jonathan D. Turner2011-06-161-1/+1
| | | | llvm-svn: 133187
* Move PBQP off allocation_order_begin. No functional change intended.Jakob Stoklund Olesen2011-06-161-5/+4
| | | | | | | I think PBQP could use RegisterClassInfo, but it didn't fit neatly with the external interfaces that PBQP uses, so I'll leave that to Lang. llvm-svn: 133186
* Introduce MachineBranchProbabilityInfo class, which has similar API toJakub Staszak2011-06-1612-27/+356
| | | | | | | | BranchProbabilityInfo (expect setEdgeWeight which is not available here). Branch Weights are kept in MachineBasicBlocks. To turn off this analysis set -use-mbpi=false. llvm-svn: 133184
* [arcmt] Fix test for MSVC build.Argyrios Kyrtzidis2011-06-162-2/+2
| | | | llvm-svn: 133183
* Move computation of __private_extern__ visibilty toFariborz Jahanian2011-06-162-11/+10
| | | | | | getLVForNamespaceScopeDecl(). // rdar://9609649 llvm-svn: 133182
* Stylistic fix: move virtual keyword before return type.Evan Cheng2011-06-161-2/+1
| | | | llvm-svn: 133181
* Allow comparison between block pointers and NULL pointerDouglas Gregor2011-06-162-3/+8
| | | | | | constants. Fixes PR10145. llvm-svn: 133179
* Change the REG_SEQUENCE SDNode to take an explict register class ID as its ↵Owen Anderson2011-06-163-17/+33
| | | | | | | | first operand. This operand is lowered away by the time we reach MachineInstrs, so the actual register-allocation handling of them doesn't need to change. This is intended to support using REG_SEQUENCE SDNode's with type MVT::untyped, and is part of the long road to eliminating some of the hacks we currently use to support register pairs and other strange constraints, particularly on ARM NEON. llvm-svn: 133178
* Switch linear scan to using RegisterClassInfo.Jakob Stoklund Olesen2011-06-161-18/+12
| | | | | | | | | This avoids the manual filtering of reserved registers and removes the dependency on allocation_order_begin(). Palliative care... llvm-svn: 133177
* Move test for appropriate directory.Galina Kistanova2011-06-161-0/+0
| | | | llvm-svn: 133176
* Mark ldrexd/strexd w/ volatile memory by defaultBruno Cardoso Lopes2011-06-161-2/+2
| | | | llvm-svn: 133175
* Test commit.Jakub Staszak2011-06-161-7/+7
| | | | llvm-svn: 133174
* Teach the warning about non-POD memset/memcpy/memmove to deal with theDouglas Gregor2011-06-163-14/+93
| | | | | | | | | __builtin_ versions of these functions as well as the normal function versions, so that it works on platforms where memset/memcpy/memmove are macros that map down to the builtins (e.g., Darwin). Fixes <rdar://problem/9372688>. llvm-svn: 133173
* PTX: Finish new calling convention implementationJustin Holewinski2011-06-1622-205/+315
| | | | llvm-svn: 133172
* PTX: Rename register classes for readability and combine int and fp registersJustin Holewinski2011-06-167-741/+378
| | | | llvm-svn: 133171
* Add TargetRegisterInfo::getRawAllocationOrder().Jakob Stoklund Olesen2011-06-164-18/+43
| | | | | | | | | | | | | This virtual function will replace allocation_order_begin/end as the one to override when implementing custom allocation orders. It is simpler to have one function return an ArrayRef than having two virtual functions computing different ends of the same array. Use getRawAllocationOrder() in place of allocation_order_begin() where it makes sense, but leave some clients that look like they really want the filtered allocation orders from RegisterClassInfo. llvm-svn: 133170
* arc: diagnose dereferencing a __weak pointer which may beFariborz Jahanian2011-06-163-0/+28
| | | | | | null at any time. // rdar://9612030 llvm-svn: 133168
* [arcmt] Fix the test when running in Lion.Argyrios Kyrtzidis2011-06-162-2/+2
| | | | llvm-svn: 133167
* Add testcase for r133050 which added support for printing and parsing escapedNick Lewycky2011-06-161-0/+24
| | | | | | names for named metadata nodes. llvm-svn: 133166
* Give arcmt-test an explicit triple for this test.John McCall2011-06-162-2/+2
| | | | llvm-svn: 133165
* Fix formatting.Owen Anderson2011-06-163-5/+5
| | | | llvm-svn: 133164
* Implement the consistency checking for C++ [temp.deduct.call]p3, whichDouglas Gregor2011-06-163-14/+164
| | | | | | | | | | | | | | | checks that the deduced argument type for a function call matches the actual argument type provided. The only place we've found where the consistency checking should actually cause template argument deduction failure is due to qualifier differences that don't fall into the realm of qualification conversions (which are *not* checked when we initially perform deduction). However, we're performing the full checking as specified in the standard to ensure that no other cases exist. Fixes PR9233 / <rdar://problem/9039590>. llvm-svn: 133163
* Add 'batch_mode' to CommandInterpreter. Modify InputReaders toCaroline Tice2011-06-169-70/+115
| | | | | | | | | | not write output (prompts, instructions,etc.) if the CommandInterpreter is in batch_mode. Also, finish updating InputReaders to write to the asynchronous stream, rather than using the Debugger's output file directly. llvm-svn: 133162
* Raise the ARCMT functionality in Clang into proper FrontendActions.Chandler Carruth2011-06-169-31/+191
| | | | | | | | | | | | | | | | | | | | | These are somewhat special in that they wrap any other FrontendAction, running various ARC transformations or checks prior to the standard action's run. To implement them easily, this extends FrontendAction to have a WrapperFrontendAction utility class which forwards all calls by default to an inner action setup at construction time. This is then subclassed to override the specific behavior needed by the different ARCMT tools. Finally, FrontendTool is taught how to create these wrapper actions from the existing flags and options structures. The result is that clangFrontend no longer depends on clangARCMigrate. This is very important, as clangARCMigrate *heavily* depends on clangFrontend. Fundamentally ARCMigrate is at the same layer as a library like Rewrite, sitting firmly on top of the Frontend, but tied together with the FrontendTool when building the clang binary itself. llvm-svn: 133161
OpenPOWER on IntegriCloud