summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix stepping a virtual thread when the python operating system was enabled.Greg Clayton2015-04-076-7/+105
| | | | | | | | | | | | The OperatingSystem plug-ins allow code to detect threads in memory and then say "memory thread 0x11111" is backed by the actual thread 1. You can then single step these virtual threads. A problem arose when thread specific breakpoints were used during thread plans where we would say "set a breakpoint on thread 0x11111" and we would hit the breakpoint on the real thread 1 and the thread IDs wouldn't match and we would get rid of the "stopped at breakpoint" stop info due to this mismatch. Code was added to ensure these events get forwarded and thus allow single stepping a memory thread to work correctly. Added a test case for this as well. <rdar://problem/19211770> llvm-svn: 234364
* [Sema] Correctly recurse when looking for [*] in function definitionsDavid Majnemer2015-04-072-9/+31
| | | | | | | | | | A [*] is only allowed in a declaration for a function, not in its definition. We didn't correctly recurse while looking for it, causing us to crash in CodeGen instead of rejecting it. This fixes PR23151. llvm-svn: 234363
* Don't subtract the header size just to add it back.Rafael Espindola2015-04-071-5/+4
| | | | llvm-svn: 234362
* [LoopAccesses] Allow analysis to complete in the presence of uniform storesAdam Nemet2015-04-075-11/+134
| | | | | | | | | | | | | | | | | | | | | | | | | | | Both run-time pointer checking and the dependence analysis are capable of dealing with uniform addresses. I.e. it's really just an orthogonal property of the loop that the analysis computes. Run-time pointer checking will only try to reason about SCEVAddRec pointers or else gives up. If the uniform pointer turns out the be a SCEVAddRec in an outer loop, the run-time checks generated will be correct (start and end bounds would be equal). In case of the dependence analysis, we work again with SCEVs. When compared against a loop-dependent address of the same underlying object, the difference of the two SCEVs won't be constant. This will result in returning an Unknown dependence for the pair. When compared against another uniform access, the difference would be constant and we should return the right type of dependence (forward/backward/etc). The changes also adds support to query this property of the loop and modify the vectorizer to use this. Patch by Ashutosh Nema! llvm-svn: 234361
* [WinEH] Add invoke of llvm.donothing to outlined catch and cleanup handlers ↵Andrew Kaylor2015-04-071-14/+65
| | | | | | | | to identify their personality. Differential Review: http://reviews.llvm.org/D8835 llvm-svn: 234360
* Use support::endian. NFC.Rafael Espindola2015-04-071-12/+7
| | | | llvm-svn: 234359
* [ELF] Set `addAbsoluteAtom` and `addUndefinedAtom` functions return type to voidSimon Atanasyan2015-04-072-5/+3
| | | | | | | We do not use values returned by these functions anywhere. So let's return nothing. llvm-svn: 234358
* [ELF] Remove unused xxxWriter class fieldsSimon Atanasyan2015-04-075-21/+7
| | | | llvm-svn: 234357
* [ELF] Remove redundant override methods which just call base class functionsSimon Atanasyan2015-04-076-24/+0
| | | | llvm-svn: 234356
* Revert "Mark instantiated function decls as inline specified if any pattern is"Reid Kleckner2015-04-072-48/+5
| | | | | | | | | | | | | | | | | | | It breaks down on this test case: void foo(); template <typename T> class C { friend void foo(); }; inline void foo() {} C<int> c; We shouldn't be marking the instantiation of the friend decl of foo as inline-specified. It may be possible to fix this by determining if the full definition is part of the current template, but it seems better to rever tot green until we come up with a full solution. This reverts commit r233817, as well as follow-ups r233820 and r233821. llvm-svn: 234355
* Merge MutableFile with SimpleFile.Rui Ueyama2015-04-0730-90/+69
| | | | | | | | SimpleFile is the only derived class of MutableFile. This patch reduces the height of class hierarchy by removing MutableFile class. llvm-svn: 234354
* Add boolean to PrintStackTraceOnErrorSignal to disable crash reporting.Pete Cooper2015-04-074-5/+5
| | | | | | | | | | | | | | | | | | | The current crash reporting on Mac OS is only disabled via an environment variable. This adds a boolean (default false) which can also disable crash reporting. The only client right now is the unittests which don't ever want crash reporting, but do want to detect killed programs. Reduces the time to run the APFloat unittests on my machine from [----------] 47 tests from APFloatTest (51250 ms total) to [----------] 47 tests from APFloatTest (765 ms total) Reviewed by Reid Kleckner and Justin Bogner llvm-svn: 234353
* Remove dead code. NFC.Rafael Espindola2015-04-073-13/+0
| | | | llvm-svn: 234352
* Added a testcase that checks that struct argumentsSean Callanan2015-04-073-0/+113
| | | | | | are passed to Objective-C methods correctly. llvm-svn: 234351
* [ARM] Mark a bunch of .td Operands with type _MEMORY.Ahmed Bougacha2015-04-073-39/+42
| | | | | | | | | | | This shouldn't affect anything in-tree, as the OperandType users are mostly smart disassemblers and such; more information is helpful there. However, on the flip side, that + the fact that this is just hinting at the meaning of operands makes this not really test-worthy or testable. Differential Revision: http://reviews.llvm.org/D8620 llvm-svn: 234350
* [bpf] fix buildAlexei Starovoitov2015-04-072-6/+3
| | | | | | | | fix the build and remove unused variable warnings in Release mode. Patch by Brenden Blanco. llvm-svn: 234349
* Made the struct types test case a little stricter,Sean Callanan2015-04-071-1/+17
| | | | | | | by verifying that we can pass a struct-typed variable to a function that takes structs. llvm-svn: 234348
* [ELF] Simplify adding default atomsSimon Atanasyan2015-04-0712-105/+48
| | | | | | | | | | | | | | | | | | | | | Now 'writer' creates an instance of `RuntimeFile` in the constructor, then populates the file in the virtual function `addDefaultAtoms`, then pass owning of this file to the caller of virtual function `createImplicitFiles`. First, we do not need to keep an instance of `RuntimeFile` so long. It is enough to create the file, right after that populate it and pass the owning. Second, relationship between `createImplicitFiles` and `addDefaultAtoms` is complicated. The `createImplicitFiles` might call `addDefaultAtoms`, overridden version of `addDefaultAtoms` might call base class `addDefaultAtoms`, and overridden version of `createImplicitFiles` might call base class `createImplicitFiles` as well as `addDefaultAtoms`. The patch solves both problems above. It creates and populates runtime files right in the createImplicitFiles(), removes `addDefaultAtoms` at all and does not keep references to runtime files in class fields. llvm-svn: 234347
* [WinEH] Fix xdata generation when no catch object is presentReid Kleckner2015-04-073-6/+66
| | | | | | | | The lack of a catch object is indicated by a frame escape index of -1. Fixes PR23137. llvm-svn: 234346
* Remove intermediate variables.Rafael Espindola2015-04-071-7/+1
| | | | | | | The name of these variables was completely out of date with the information stored in them. llvm-svn: 234345
* move helper function closer to use; NFCSanjay Patel2015-04-071-17/+17
| | | | llvm-svn: 234344
* Enable W4 warnings by default for MSVC buildsAndrew Kaylor2015-04-071-8/+1
| | | | llvm-svn: 234343
* Remove unused argument.Rafael Espindola2015-04-071-9/+6
| | | | llvm-svn: 234342
* Fix bug where an additional O packet is sent after inferior exits.Chaoren Lin2015-04-071-2/+6
| | | | | | | | | | | | | | | | | Summary: ConnectionFileDescriptor::Read was returning eConnectionStatusError instead of 0 on m_shutting_down, which caused the caller to think that some number of bytes were read. Reviewers: jingham, vharron, clayborg Reviewed By: clayborg Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D8850 llvm-svn: 234341
* DebugInfo: Remove constructors for DIRef<>Duncan P. N. Exon Smith2015-04-073-96/+17
| | | | | | | Remove all constructors for `DIRef<>` *except* the ones forwarding from `TypedDebugNodeRef`. llvm-svn: 234340
* Revert "Fix a compiler error under MSVC"Duncan P. N. Exon Smith2015-04-071-1/+1
| | | | | | | This reverts the bandaid commit in r234308 now that I have a proper fix in LLVM as of r234326. llvm-svn: 234339
* fix typo; NFCSanjay Patel2015-04-071-1/+1
| | | | llvm-svn: 234338
* add some const to FastMathFlags getters; NFCSanjay Patel2015-04-071-6/+6
| | | | llvm-svn: 234337
* [lit] Allow disabling an entire gtest suite, as is done in tsanReid Kleckner2015-04-071-1/+2
| | | | llvm-svn: 234336
* Revert "Try a third time to fix MSVC build after r234290"Duncan P. N. Exon Smith2015-04-071-3/+3
| | | | | | | | | | This reverts commit r234295 (and r234294 and r234292 before it). I removed the implicit conversion to `MDTuple*` r234326, so there's no longer an ambiguity in `operator[]()`. I think MSVC should accept the original code now... llvm-svn: 234335
* AArch64: Don't lower ISD::SELECT to ISD::SELECT_CCMatthias Braun2015-04-072-44/+60
| | | | | | | | | | | | | | | | Instead of lowering SELECT to SELECT_CC which is further lowered later immediately call the SELECT_CC lowering code. This is preferable because: - Avoids an unnecessary roundtrip through the legalization queues with an intermediate node. - More importantly: Lowered operations get visited last leading to SELECT_CC getting visited with legalized operands and unlegalized ones for preexisting SELECT_CC nodes. This does not hurt the current code (hence no testcase) but is required for another patch I am working on. Differential Revision: http://reviews.llvm.org/D8187 llvm-svn: 234334
* Revert "Workaround bot failure with explicit conversion to MDTuple*"Duncan P. N. Exon Smith2015-04-071-1/+1
| | | | | | | | This reverts commit r234329, which insufficiently appeased older `clang`s (apparently that wasn't the only call site). r234331 was a more complete fix. llvm-svn: 234333
* Delete port forwarding if ConnectRemote fails.Oleksiy Vyalov2015-04-072-15/+29
| | | | | | http://reviews.llvm.org/D8826 llvm-svn: 234332
* Workaround continued bot failures with MDTupleTypedArrayWrapperDuncan P. N. Exon Smith2015-04-071-4/+4
| | | | | | | | | Change the explicit constructor to be more specific. I think this will get us past the continued bot failures [1] with older clangs. [1]: http://lab.llvm.org:8080/green/job/clang-stage1-cmake-RA-incremental_build/8203 llvm-svn: 234331
* Fixed a problem where the second @import statementSean Callanan2015-04-072-3/+9
| | | | | | | | | | | | in a session would be silently ignored by the compiler because the compiler looked at its SourceLocation and decided it had already handled it. Also updated the relevant test case. <rdar://problem/20315447> llvm-svn: 234330
* Workaround bot failure with explicit conversion to MDTuple*Duncan P. N. Exon Smith2015-04-071-1/+1
| | | | | | | | | | | | | | | | | | A bot is failing [1] after r234326, apparently because this code doesn't do what I think it should: template <class U> explicit MDTupleTypedArrayWrapper( const U &Tuple, typename std::enable_if< std::is_constructible<const MDTuple *, U>::value>::type * = nullptr) : N(Tuple) {} Just be explicit for now. [1]: http://lab.llvm.org:8080/green/job/clang-stage1-cmake-RA-incremental_build/8201/ llvm-svn: 234329
* [Objective-C Sema] Patch to not issue unavailbility/deprecatedFariborz Jahanian2015-04-072-1/+26
| | | | | | | | warning when multiple method declarations are found in global pool with differing types and some are available. rdar://20408445 llvm-svn: 234328
* DebugInfo: LLVM API change in r234326 for array-like tuple wrappersDuncan P. N. Exon Smith2015-04-071-9/+7
| | | | | | | | | Update a few calls to `DIBuilder` now that `MDTuple` array-wrappers don't have implicit conversions to `MDTuple*`. I may circle back and update `DIBuilder` to take arrays here, to make it easier for the callers. llvm-svn: 234327
* IR: Remove MDTupleTypedArrayWrapper::operator MDTuple*()Duncan P. N. Exon Smith2015-04-079-89/+128
| | | | | | | | | | | | Remove `MDTupleTypedArrayWrapper::operator MDTuple*()`, since it causes ambiguity (at least in some [1] compilers [2]) when using indexes to `MDTupleTypedArrayWrapper::operator[](unsigned)` that are convertible to (but not the same as) `unsigned`. [1]: http://lab.llvm.org:8011/builders/sanitizer-windows/builds/2308 [2]: http://lab.llvm.org:8011/builders/clang-cmake-mips/builds/4442 llvm-svn: 234326
* Cleanup register pressure calculation in MachineLICM.Daniel Jasper2015-04-071-107/+65
| | | | | | | | | | | | | | | There were four almost identical implementations of calculating/updating the register pressure for a certain MachineInstr. Cleanup to have a single implementation (well, controlled with two bool flags until this is cleaned up more). No functional changes intended. Tested by verify that there are no binary changes in the entire llvm test-suite. A new test was added separately in r234309 as it revealed a pre-existing error in the register pressure calculation. llvm-svn: 234325
* Implement atanh builtinTom Stellard2015-04-075-0/+162
| | | | | | | This implementation was ported from the AMD builtin library and has been tested with piglit, OpenCV, and the ocl conformance tests. llvm-svn: 234324
* Implement acosh builtinTom Stellard2015-04-075-0/+176
| | | | | | | This implementation was ported from the AMD builtin library and has been tested with piglit, OpenCV, and the ocl conformance tests. llvm-svn: 234323
* Fix host config for Android and remove android specific part form Linux.Tamas Berghammer2015-04-072-3/+1
| | | | llvm-svn: 234322
* Remove check for windows when compiling scripts directoryPavel Labath2015-04-071-1/+1
| | | | | | this is a followup to r234319, change requested in http://reviews.llvm.org/D8855. llvm-svn: 234321
* clang-format: Fix regression formatting QT's "signals:" from r234318.Daniel Jasper2015-04-074-3/+18
| | | | llvm-svn: 234320
* Don't compile scripts directory if LLDB_DISABLE_PYTHON is setPavel Labath2015-04-071-1/+1
| | | | | | | | | | | | | | | | | Summary: What looks like a typo has caused the scripts/Python directory to be compiled on non-Windows platforms even with LLDB_DISABLE_PYTHON, which failed if Python.h was unavaiable. This changes the condition to avoid compilation if LLDB_DISABLE_PYTHON is set. Test Plan: Remove Python.h, verify compilation is successful. Reviewers: zturner Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D8855 llvm-svn: 234319
* clang-format: Don't allow labels when expecting declarations.Daniel Jasper2015-04-072-5/+12
| | | | | | | | | | | | | | | | | | | | | | | | This fixes formatting unnamed bitfields (llvm.org/PR21999). Before: struct MyStruct { uchar data; uchar: 8; uchar: 8; uchar other; }; After: struct MyStruct { uchar data; uchar : 8; uchar : 8; uchar other; }; llvm-svn: 234318
* Add some documentation about cross-compilation to www.Pavel Labath2015-04-071-0/+172
| | | | | | | | | | Reviewers: zturner, vharron, tberghammer, omjavaid Subscribers: tberghammer, lldb-commits Differential Revision: http://reviews.llvm.org/D8610 llvm-svn: 234317
* [mips] [IAS] Allow .set assignments for already defined symbols.Toma Tabacu2015-04-072-5/+19
| | | | | | | | | | | | | | | | Summary: This is not possible when using the IAS for MIPS, but it is possible when using the IAS for other architectures and when using GAS for MIPS. Reviewers: dsanders Reviewed By: dsanders Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D8578 llvm-svn: 234316
* Refactor a lot of duplicated code for stub output.Rafael Espindola2015-04-079-129/+76
| | | | | | | This also moves it earlier so that it they are produced before we print an end symbol for the data section. llvm-svn: 234315
OpenPOWER on IntegriCloud