summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix typos in commentsRobin Morisset2014-08-156-8/+8
| | | | llvm-svn: 215777
* Wrap to 80 columns, no behavior change.Nico Weber2014-08-151-1/+2
| | | | llvm-svn: 215776
* Move FileSystem functions out of Host and into their own classes.Zachary Turner2014-08-1530-661/+800
| | | | | | | | | | | | | | | | More specifically, this change can be summarized as follows: 1) Makes an lldbHostPosix library which contains code common to all posix platforms. 2) Creates Host/FileSystem.h which defines a common FileSystem interface. 3) Implements FileSystem.h in Host/windows and Host/posix. 4) Creates Host/FileCache.h, implemented in Host/common, which defines a class useful for storing handles to open files needed by the debugger. Differential Revision: http://reviews.llvm.org/D4889 llvm-svn: 215775
* Rename as suggested by dblaikieSean Silva2014-08-151-2/+2
| | | | llvm-svn: 215774
* ArrayRef'izeSean Silva2014-08-153-23/+19
| | | | | | | I've shied away from ArrayRef'izing CompilerInvocation::CreateFromArgs in this commit because that is a less localized change. llvm-svn: 215773
* [AArch32] Add support for FP rounding operations for ARMv8/AArch32.Chad Rosier2014-08-153-12/+139
| | | | | | Phabricator Revision: http://reviews.llvm.org/D4935 llvm-svn: 215772
* Fix dependency ordering for the xpc file installs.Jason Molenda2014-08-151-1/+1
| | | | llvm-svn: 215771
* [Option] Support MultiArg in --helpNick Kledzik2014-08-151-1/+12
| | | | | | | | Currently, if you use a MultiArg<> option, then printing out the help/usage message will cause an assert. This fixes getOptionHelpName() to work with MultiArg Options. llvm-svn: 215770
* Tame a few enum size tests when using -fshort-enums on ARM.Jonathan Roelofs2014-08-152-2/+2
| | | | llvm-svn: 215769
* DebugInfo: While loop backedge should be attribute to the start of the while ↵David Blaikie2014-08-152-14/+26
| | | | | | | | | | | | | statement. A little test case simplification - this could be simplified further, though there are certainly interesting connections to the if/else construct so I'm hesitant to remove that entirely though it does appear somewhat unrelated. (similar fix to r215766, related to PR19864) llvm-svn: 215768
* Rename this function to better reflect its purposeSean Silva2014-08-151-2/+2
| | | | | | Thanks to dblaikie for the impetus to look for a better name. llvm-svn: 215767
* DebugInfo: Fix PR19864 better - attribute the jump at the end of a range-for ↵David Blaikie2014-08-152-3/+4
| | | | | | | | | | | | | | | loop, to the start of the loop. This avoids debuggers stepping to strange places (like the last statement in the loop body, or the first statement in the if). This is not the whole answer, though - similar bugs no doubt exist in other loops (patches to follow) and attributing exception handling code to the correct line is also tricky (based on the previous fix to PR19864, exception handling is still erroneously attributed to the 'if' line). llvm-svn: 215766
* Set comdats when lazily linking functions.Rafael Espindola2014-08-153-0/+17
| | | | | | | We were setting the comdat when functions were copied in the initial pass, but not when they were linked only when we found out that they are needed. llvm-svn: 215765
* Typo fix in comments: definintion -> definitionJames Dennett2014-08-152-2/+2
| | | | llvm-svn: 215764
* [TSan] Initialize flags as early as possible. Disables back coredump, ↵Alexey Samsonov2014-08-156-11/+24
| | | | | | accidentally enabled in r215479. Add a test. llvm-svn: 215763
* [mach-o] Support -filelist option in darwin driverNick Kledzik2014-08-1514-48/+151
| | | | | | | | | | | | The darwin linker has an option, heavily used by Xcode, in which, instead of listing all input files on the command line, the input file paths are written to a text file and the path of that text file is passed to the linker with the -filelist option (similar to @file). In order to make test cases for this, I generalized the -test_libresolution option to become -test_file_usage. llvm-svn: 215762
* [cleanup] Rename this function to better reflect its purpose. NFC.Sean Silva2014-08-151-9/+9
| | | | | | | | | | This also suggests some refactoring to simplify this code. Basically, a ton of complexity in this argument handling code comes from the need to save const char *'s in stable storage for pushing onto argv. It seems like llvm::cl::StringSaver can be improved to cover all the needs here. llvm-svn: 215761
* [cleanup] Range-for'ify this loop. NFC.Sean Silva2014-08-151-4/+3
| | | | llvm-svn: 215760
* [cleanup] Factor out handling CC1 tools. NFC.Sean Silva2014-08-151-14/+15
| | | | llvm-svn: 215759
* Add missing matchers to the dynamic registry.Samuel Benzaquen2014-08-151-0/+11
| | | | | | | | | | Reviewers: klimek Subscribers: klimek, cfe-commits Differential Revision: http://reviews.llvm.org/D4910 llvm-svn: 215757
* [cleanup] Factor out setting the driver's install dir. NFC.Sean Silva2014-08-151-20/+22
| | | | llvm-svn: 215756
* [cleanup] Factor out initializing the DianosticOptions. NFC.Sean Silva2014-08-151-13/+19
| | | | llvm-svn: 215755
* [cleanup] Factor out adjusting "cl.exe" to "clang-cl.exe". NFC.Sean Silva2014-08-151-7/+11
| | | | llvm-svn: 215754
* [FastISel][AArch64] Fix a latent bug in floating-point materialization.Juergen Ributzka2014-08-151-1/+10
| | | | | | | | | | | | | | | | | | | | | | The floating-point value positive zero (+0.0) is a valid immedate value according to isFPImmLegal. As a result AArch64 FastISel went ahead and used the immediate version of fmov to materialize the constant. The problem is that the immediate version of fmov cannot encode an imediate for postive zero. Instead a fmov from the zero register was supposed to be used in this case. This fix adds handling for this special case and uses fmov from the zero register to materialize a positive zero (negative zeroes go to the constant pool). There is no test case for this, because this code is currently dead. It will be enabled in a future commit and I will add a test case in a separate commit after that. This fixes <rdar://problem/18027157>. llvm-svn: 215753
* Reapplying [FastISel][AArch64] Cleanup constant materialization code. NFCI.Juergen Ributzka2014-08-151-26/+30
| | | | | | | | | | Note: This reapplies r215582 without any modifications. The refactoring wasn't responsible for the buildbot failures. Original commit message: Cleanup and prepare constant materialization code for future commits. llvm-svn: 215752
* [cleanup] Factor out some checks. NFC.Sean Silva2014-08-151-14/+18
| | | | | | | | | | | The core logic in main() is actually pretty simple, but there's lots of stuff that has been added over time which obscures the flow of the code. In upcoming patches, I'll be pulling more stuff out of the main codepath. I'm open to naming suggestions for these helper functions. llvm-svn: 215751
* Revert get testsuite running on FreeBSD.Eric Fiselier2014-08-151-14/+0
| | | | | | There is a similar patch up for review. I'll submit my changes via that. llvm-svn: 215750
* R600/SI: Move all fabs / fneg handling to patternsMatt Arsenault2014-08-156-135/+137
| | | | llvm-svn: 215749
* R600/SI: Use source modifiers for f64 fnegMatt Arsenault2014-08-155-6/+186
| | | | llvm-svn: 215748
* R600/SI: Use source modifier for f64 fabsMatt Arsenault2014-08-153-2/+127
| | | | llvm-svn: 215747
* R600/SI: Refactor fneg / fabs patternsMatt Arsenault2014-08-151-22/+17
| | | | llvm-svn: 215746
* MS ABI: Virtual member pointer thunks are not unnamed_addrReid Kleckner2014-08-152-12/+17
| | | | | | They can be compared for identity. llvm-svn: 215745
* Fix the build with MSVC 2013 after new shuffle codeReid Kleckner2014-08-151-2/+8
| | | | | | | | | | | | MSVC gives this awesome diagnostic: ..\lib\Target\X86\X86ISelLowering.cpp(7085) : error C2971: 'llvm::VariadicFunction1' : template parameter 'Func' : 'isShuffleEquivalentImpl' : a local variable cannot be used as a non-type argument ..\include\llvm/ADT/VariadicFunction.h(153) : see declaration of 'llvm::VariadicFunction1' ..\lib\Target\X86\X86ISelLowering.cpp(7061) : see declaration of 'isShuffleEquivalentImpl' Using an anonymous namespace makes the problem go away. llvm-svn: 215744
* Missed a few places where we need to report unreadable executables.Greg Clayton2014-08-156-24/+66
| | | | | | <rdar://problem/17727734> llvm-svn: 215743
* Get testsuite running on FreeBSD.Eric Fiselier2014-08-151-0/+14
| | | | | | | | Add initial support for using LIT to run the tests on FreeBSD. More work may need to be done to add support for FreeBSD but this is a good initial step. llvm-svn: 215742
* Don't crash when specifying a core file that isn't readable.Greg Clayton2014-08-155-9/+67
| | | | | | | | | | | | | Fixes include: 1 - added new FileSpec method: bool FileSpec::Readable() 2 - detect when an executable is not readable and give an appropriate error for: (lldb) file /tmp/unreadablefile 3 - detect when a core file is not readable and give an appropriate error 4 - detect when a specified core file doesn't exist and give an appropriate error <rdar://problem/17727734> llvm-svn: 215741
* Revert "Turn off extern templates for most uses."Justin Bogner2014-08-156-10/+1
| | | | | | | | | | | Turning off explicit template instantiation leads to a pretty significant build time and code size cost. We're better off dealing with ABI incompatibility issues that come up in a less heavy handed way. This reverts commit r189610. llvm-svn: 215740
* R600/SI: Fix offset folding in some cases with shifted pointers.Matt Arsenault2014-08-155-1/+423
| | | | | | | | | | | | | Ordinarily (shl (add x, c1), c2) -> (add (shl x, c2), c1 << c2) is only done if the add has one use. If the resulting constant add can be folded into an addressing mode, force this to happen for the pointer operand. This ends up happening a lot because of how LDS objects are allocated. Since the globals are allocated next to each other, acessing the first element of the second object is directly indexed by a shifted pointer. llvm-svn: 215739
* R600: Add ldexp intrinsicMatt Arsenault2014-08-153-6/+32
| | | | llvm-svn: 215738
* [x86] Teach the new AVX v4f64 shuffle lowering to use UNPCK instructionsChandler Carruth2014-08-152-1/+67
| | | | | | where applicable for blending. llvm-svn: 215737
* Objective-C. Do not warn if user is using property-dox syntax to name aFariborz Jahanian2014-08-152-2/+6
| | | | | | | user provided setter name (as declared in @property attribute declaration). rdar://18022762 llvm-svn: 215736
* [FastISel] Remove an performance debugging assert.Juergen Ributzka2014-08-151-1/+0
| | | | | | | | As Jim pointed out this assert isn't really needed to test for correctness, because the code right afterwards does the same check and falls-back to SelectionDAG - as intended. llvm-svn: 215735
* R600/SI: Add intrinsic for ldexpMatt Arsenault2014-08-156-2/+39
| | | | llvm-svn: 215734
* [FastISel][ARM] Fix unit test from r215682.Juergen Ributzka2014-08-151-5/+3
| | | | | | Thanks Jim for finding this. llvm-svn: 215733
* R600/SI: Implement isLegalAddressingModeMatt Arsenault2014-08-153-0/+107
| | | | | | | | | | | | | The default assumes that a 16-bit signed offset is used. LDS instruction use a 16-bit unsigned offset, so it wasn't being used in some cases where it was assumed a negative offset could be used. More should be done here, but first isLegalAddressingMode needs to gain an addressing mode argument. For now, copy most of the rest of the default implementation with the immediate offset change. llvm-svn: 215732
* Move some code into a helper function. NFC.Rafael Espindola2014-08-151-45/+48
| | | | llvm-svn: 215731
* Fix a thinko in the process list formatting.Jim Ingham2014-08-151-6/+15
| | | | | | | | Made Process::Attach list the matching processes if there is more than one match. <rdar://problem/18023352> llvm-svn: 215730
* ARM: Fix and re-enable load/store optimizer for Thumb1.Moritz Roth2014-08-158-136/+105
| | | | | | | | | | | | | | | In a previous iteration of the pass, we would try to compensate for writeback by updating later instructions and/or inserting a SUBS to reset the base register if necessary. Since such a SUBS sets the condition flags it's not generally safe to do this. For now, only merge LDR/STRs if there is no writeback to the base register (LDM that loads into the base register) or the base register is killed by one of the merged instructions. These cases are clear wins both in terms of instruction count and performance. Also add three new test cases, and update the existing ones accordingly. llvm-svn: 215729
* ARM load/store optimizer: Compute BaseKill correctly.Moritz Roth2014-08-151-5/+11
| | | | | | | | | | | This adds some code back that was deleted in r92053. The location of the last merged memory operation needs to be kept up-to-date since MemOps may be in a different order to the original instruction stream to allow merging (since registers need to be in ascending order). Also simplify the logic to determine BaseKill using findRegisterUseOperandIdx to use an equivalent function call instead. llvm-svn: 215728
* [FastISel][ARM] Fix a think-o in my previous commit (r215682).Juergen Ributzka2014-08-151-15/+15
| | | | | | | | | We actually need to return the register into which we materialized the constant and not just "true" for success. This code is currently partially dead, that is why it didn't trigger any failures yet. Once I change the order of the constant materialization this code will be fully exercised. llvm-svn: 215727
OpenPOWER on IntegriCloud