summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Create a git ignore file for openmp runtime.Andrey Churbanov2017-03-111-0/+42
| | | | | | | | Patch by Guansong Zhang. Differential Revision: https://reviews.llvm.org/D30784 llvm-svn: 297562
* Fix signed/unsigned comparison warningsSimon Pilgrim2017-03-111-2/+2
| | | | llvm-svn: 297561
* Fix -Wsentinel warningSimon Pilgrim2017-03-111-1/+1
| | | | llvm-svn: 297560
* Use setBits in SelectionDAGAmaury Sechet2017-03-111-9/+8
| | | | | | | | | | | | Summary: As per title. Reviewers: RKSimon Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D30836 llvm-svn: 297559
* [isl++] Add last set of missing isl:: prefixes to increase consistency [NFC]Tobias Grosser2017-03-111-309/+310
| | | | llvm-svn: 297558
* AMDGPU: Remove packf16 intrinsicMatt Arsenault2017-03-113-35/+0
| | | | llvm-svn: 297557
* AMDGPU: Keep track of modifiers when converting v_mac to v_madMatt Arsenault2017-03-113-4/+38
| | | | | | | | | | | | | | | | Since v_max_f32_e64/v_max_f16_e64 can be folded if the target instruction supports the clamp bit, we also need to maintain modifiers when converting v_mac to v_mad. This fixes a rendering issue with Dirt Rally because a v_mac instruction with the clamp bit set was converted to a v_mad but that bit was lost during the conversion. Fixes: e184e01dd79 ("AMDGPU: Fold FP clamp as modifier bit") Patch by Samuel Pitoiset <samuel.pitoiset@gmail.com> llvm-svn: 297556
* fix test coverage capture dirsEric Fiselier2017-03-111-1/+5
| | | | llvm-svn: 297555
* [libFuzzer] add more iterations to LLVMFuzzer-Memcmp64BytesTestKostya Serebryany2017-03-111-1/+1
| | | | llvm-svn: 297554
* Change test coverage generation to use llvm-cov instead of gcov.Eric Fiselier2017-03-114-8/+65
| | | | | | | | | | | | | Clang doesn't produce gcov compatible coverage files. This causes lcov to break because it uses gcov by default. This patch switches lcov to use llvm-cov as the gcov-tool. Unfortunatly llvm-cov doesn't provide a gcov like interface by default so it won't work with lcov. However `llvm-cov gcov` does. For this reason we generate 'llvm-cov-wrapper' script that always passes the gcov flag. llvm-svn: 297553
* [ADT] Add a DenseMapInfo<T> for shorts.Zachary Turner2017-03-111-0/+18
| | | | | | Differential Revision: https://reviews.llvm.org/D30857 llvm-svn: 297552
* [libFuzzer] reduce the number of vector resizes during merge ↵Kostya Serebryany2017-03-111-6/+7
| | | | | | (https://github.com/google/oss-fuzz/issues/445) llvm-svn: 297551
* Fix line endings of DenseMapInfo.hZachary Turner2017-03-111-221/+221
| | | | llvm-svn: 297550
* Remove eol-style:native from DenseMapInfo.hZachary Turner2017-03-111-221/+221
| | | | llvm-svn: 297549
* [Support] Add a formatv provider for Twine.Zachary Turner2017-03-111-0/+12
| | | | llvm-svn: 297548
* [coroutines] Fix diagnostics depending on the first coroutine statement.Eric Fiselier2017-03-115-30/+126
| | | | | | | | | | | | | | | | | | Summary: Some coroutine diagnostics need to point to the location of the first coroutine keyword in the function, like when diagnosing a `return` inside a coroutine. Previously we did this by storing each *valid* coroutine statement in a list and select the first one to use in diagnostics. However if every coroutine statement is invalid we would have no location to point to. This patch fixes the storage of the first coroutine statement location, ensuring that it gets stored even when the resulting AST node would be invalid. This patch also removes the `CoroutineStmts` list in `FunctionScopeInfo` because it was unused. Reviewers: rsmith, GorNishanov, aaron.ballman Reviewed By: GorNishanov Subscribers: mehdi_amini, cfe-commits Differential Revision: https://reviews.llvm.org/D30776 llvm-svn: 297547
* [libFuzzer] print how much memory is consumed by the outer merge process ↵Kostya Serebryany2017-03-112-2/+12
| | | | | | (https://github.com/google/oss-fuzz/issues/445) llvm-svn: 297546
* Revert r297516 - Respect CMAKE_INSTALL_MANDIR for sphinx generated manpagesEric Fiselier2017-03-111-1/+1
| | | | | | | | When CMAKE_INSTALL_MANDIR isn't defined it ends up attempting to install the man pages under "/man1" and we really don't want to accidentally install stuff at the filesystem root. llvm-svn: 297545
* [libFuzzer] add test/LargeTest.cpp, mostly for manual experiments with large ↵Kostya Serebryany2017-03-111-0/+37
| | | | | | number of edges, not yet suitable for unit testing llvm-svn: 297544
* [libFuzzer] remove fuzzer-jobs.test which is flaky and not very usefulKostya Serebryany2017-03-111-31/+0
| | | | llvm-svn: 297543
* Remove opt-bisect support for "cases" in favor of debug countersDaniel Berlin2017-03-113-45/+2
| | | | | | | | | | | | | | | | | | Summary: Ths "cases" support was not quite finished, is unused, and is really just debug counters. (well, almost, debug counters are slightly more powerful, in that they can skip things at the start, too). Note, opt-bisect itself could also be implemented as a wrapper around debug counters, but not sure it's worth it ATM. I'll shove it on a todo list if we think it is. Reviewers: MatzeB, chandlerc Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D30856 llvm-svn: 297542
* [coroutines] Refactor SuspendExpr to create just one OpaqueValue (almost NFC)Gor Nishanov2017-03-112-15/+22
| | | | | | | | | | | | | | | | Summary: Create only one OpaqueValue for await_ready/await_suspend/await_resume. Store OpaqueValue used in the CoroutineSuspendExpr node, so that CodeGen does not have to hunt looking for it. Reviewers: rsmith, EricWF, aaron.ballman Reviewed By: EricWF Subscribers: mehdi_amini, cfe-commits Differential Revision: https://reviews.llvm.org/D30775 llvm-svn: 297541
* [unittest] Explicitly specify alignment when using BumpPtrAllocator.Jordan Rose2017-03-112-4/+5
| | | | | | | | | | | | | r297310 began inserting red zones around allocations under ASan, which perturbs the alignment of subsequent allocations. Deliberately specify this in two places where it matters. Fixes failures when these tests are run under ASan and UBSan together. Reviewed by Duncan Exon Smith. rdar://problem/30980047 llvm-svn: 297540
* Use a WeakVH for UnknownInstructions in AliasSetTrackerSanjoy Das2017-03-113-24/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: This change solves the same problem as D30726, except that this only throws out the bathwater. AST was not correctly tracking and deleting UnknownInstructions via handles. The existing code only tracks "pointers" in its `ASTCallbackVH`, so an UnknownInstruction (that isn't also def'ing a pointer used by another memory instruction) never gets a `ASTCallbackVH`. There are two other ways to solve this problem: - Use the `PointerRec` scheme for both known and unknown instructions. - Use a `CallbackVH` that erases the offending Instruction from the UnknownInstruction list. Both of the above changes seemed to be significantly (and unnecessarily IMO) more complex than this. Reviewers: chandlerc, dberlin, hfinkel, reames Subscribers: mcrosier, llvm-commits Differential Revision: https://reviews.llvm.org/D30849 llvm-svn: 297539
* fix xunit attribute parsingTim Hammerquist2017-03-111-1/+1
| | | | llvm-svn: 297538
* VNCoercion: Make the function signatures all consistentDaniel Berlin2017-03-113-4/+3
| | | | llvm-svn: 297537
* [AMDGPU] Remove getBidirectionalReasonRankStanislav Mekhanoshin2017-03-1115-63/+52
| | | | | | | | | | | | | | This method inverts the Reason field of a scheduling candidate. It does right comparison between RegCritical and RegExcess, but everything else is broken. In fact it can prefer less strong reason such as Weak over RegCritical because Weak > -RegCritical. The CandReason enum is properly sorted, so just remove artificial ranking. Differential Revision: https://reviews.llvm.org/D30557 llvm-svn: 297536
* [IRTranslator] Simplify error handling for translating constants. NFC.Quentin Colombet2017-03-111-9/+3
| | | | | | | | We don't need to check whether the fallback path is enabled to return false. Just do that all the time on error cases, the caller knows (or at least should know!) how to handle the failing case. llvm-svn: 297535
* Fix subreg value numbers in handleMoveUpStanislav Mekhanoshin2017-03-112-1/+21
| | | | | | | | | | | The problem can occur in presence of subregs. If we are swapping two instructions defining different subregs of the same register we will get a new liveout from a block. We need to preserve value number for block's liveout for successor block's livein to match. Differential Revision: https://reviews.llvm.org/D30558 llvm-svn: 297534
* Revert "Reapply [VFS] Ignore broken symlinks in the directory iterator."Juergen Ributzka2017-03-113-78/+6
| | | | | | Still broken on Windows and SystemZ bot ... sorry for the noise. llvm-svn: 297533
* Fix DoNotOptimize on MSVCEric Fiselier2017-03-111-2/+4
| | | | llvm-svn: 297532
* Adding debug output to investigate systemz bot issue.Juergen Ributzka2017-03-111-0/+1
| | | | llvm-svn: 297531
* clang/test/SemaOpenCL/overload_addrspace_resolution.cl: Appease MS mangler ↵NAKAMURA Takumi2017-03-101-1/+1
| | | | | | to specify triple=x86_64-unknown. llvm-svn: 297530
* Strip trailing whitespace.Simon Pilgrim2017-03-101-23/+23
| | | | llvm-svn: 297529
* Reapply [VFS] Ignore broken symlinks in the directory iterator.Juergen Ributzka2017-03-103-6/+77
| | | | | | | | | | | | | | | | | | | Modified the tests to accept any iteration order. The VFS directory iterator and recursive directory iterator behave differently from the LLVM counterparts. Once the VFS iterators hit a broken symlink they immediately abort. The LLVM counterparts allow to recover from this issue by clearing the error code and skipping to the next entry. This change adds the same functionality to the VFS iterators. There should be no change in current behavior in the current CLANG source base, because all clients have loop exit conditions that also check the error code. This fixes rdar://problem/30934619. Differential Revision: https://reviews.llvm.org/D30768 llvm-svn: 297528
* Fix redundant condition (PR32138)Simon Pilgrim2017-03-101-2/+2
| | | | | | '!A || (A && B)' is equivalent to '!A || B' llvm-svn: 297527
* [RDF] Remove the map of reaching defs from copy propagationKrzysztof Parzyszek2017-03-103-59/+28
| | | | | | Use Liveness::getNearestAliasedRef to find the reaching def instead. llvm-svn: 297526
* [ELF] Handle NONE relocations on AArch64Petr Hosek2017-03-102-0/+26
| | | | | | Differential Revision: https://reviews.llvm.org/D30628 llvm-svn: 297525
* [RDF] Implement Liveness::getNearestAliasedRef(Reg, Inst)Krzysztof Parzyszek2017-03-103-4/+66
| | | | | | | | This function will find the closest ref node aliased to Reg that is in an instruction preceding Inst. This could be used to identify the hypothetical reaching def of Reg, if Reg was a member of Inst. llvm-svn: 297524
* [X86][SSE] Fix load folding for (V)CVTDQ2PDSimon Pilgrim2017-03-103-6/+4
| | | | | | This only requires a 64-bit memory source, not the whole 128-bits. But the 128-bit case is still supported via X86InstrInfo::foldMemoryOperandImpl llvm-svn: 297523
* [unittest] Do not convert large unsigned long to isl::valTobias Grosser2017-03-101-2/+2
| | | | | | | | | | | | | | | | | | | | | | Currently the isl::val constructor only takes a signed long as parameter, which on Windows is only 32 bit large and can consequently not be used to obtain the same result when loading from the expression '(1ull << 32) - 1)' that we get when loading this value via isl_val_int_from_ui or when loading the value on Linux systems with 64 bit long data types. We avoid this issue by performing the shift and subtractiong within the isl::val. It would be nice to teach the isl++ bindings to construct isl::val from other integer types, but the current interface is not sufficient to do so. If constructors from both signed long and unsigned long are exposed, then integer literals that are of type 'int' and which must be converted to 'long' to match the constructor have two ambigious constructors to choose from, which result in a compiler error. The right solution is likely to additionally expose constructors from signed and unsigned int, but these are not yet available in the isl C interface and adding those adhoc to our bindings is something I would like to avoid for now. We should address this issue with a proper discussion on the isl side. llvm-svn: 297522
* [X86] Fix Wunused-lambda-capture warningSimon Pilgrim2017-03-101-2/+2
| | | | llvm-svn: 297521
* [isl++] Add namespace prefixes to isl::ctx and isl::statTobias Grosser2017-03-101-91/+91
| | | | | | These were missed in r297478. We add them for consistency. llvm-svn: 297520
* [isl++] Drop warning about experimental statusTobias Grosser2017-03-101-8/+0
| | | | | | | | | As most discussions about these bindings have concluded and only the final patch review on the isl mailing list is missing, we drop the experimental warning tag to match the patchset we will submit to isl, which is expected to not change notably any more. llvm-svn: 297519
* [X86][RTM] Regenerate RTM intrinsic tests for 32/64-bit targets.Simon Pilgrim2017-03-101-12/+53
| | | | llvm-svn: 297518
* Revert r297510 "[VFS] Ignore broken symlinks in the directory iterator."Juergen Ributzka2017-03-103-86/+6
| | | | | | The tests are failing on one of the bots. llvm-svn: 297517
* Respect CMAKE_INSTALL_MANDIR for sphinx generated manpagesJonathan Roelofs2017-03-101-1/+1
| | | | llvm-svn: 297516
* Silence a pedantic warning, NFCErik Pilkington2017-03-101-0/+5
| | | | llvm-svn: 297515
* LTO: Hash type identifier resolutions for WholeProgramDevirt.Peter Collingbourne2017-03-105-2/+74
| | | | | | Differential Revision: https://reviews.llvm.org/D30555 llvm-svn: 297514
* LTO: Hash type identifier resolutions for LowerTypeTests.Peter Collingbourne2017-03-105-11/+109
| | | | | | Differential Revision: https://reviews.llvm.org/D30553 llvm-svn: 297513
OpenPOWER on IntegriCloud