summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* [OpenCL] Enable unroll hint for OpenCL 1.x.Egor Churaev2016-12-133-21/+5
| | | | | | | | | | | | Summary: Although the feature was introduced only in OpenCL C v2.0 spec., it's useful for OpenCL 1.x too and doesn't require HW support. Reviewers: Anastasia Subscribers: yaxunl, cfe-commits, bader Differential Revision: https://reviews.llvm.org/D27453 llvm-svn: 289535
* [SelectionDAG] computeKnownBits - simplified knownbits sign extension. NFCI.Simon Pilgrim2016-12-131-13/+4
| | | | | | We don't need to extract+test the sign bit of the known ones/zeros, we can use sext which will handle all of this. llvm-svn: 289534
* Adjust clang-format formatting to r289531Tobias Grosser2016-12-131-4/+4
| | | | | | | clang-format has been updated in r289531 to keep labels and values on the same line. This change updates Polly to the new formatting style. llvm-svn: 289533
* [mips][rtdyld] Move MIPS relocation resolution to a subclass and implement ↵Simon Dardis2016-12-136-306/+411
| | | | | | | | | | | | | | | N32 relocations N32 relocations are only correct for individual relocations at the moment. Support for relocation composition will follow in a later patch. Patch By: Daniel Sanders Reviwers: vkalintiris, atanasyan Differential Revision: https://reviews.llvm.org/D27467 llvm-svn: 289532
* clang-format: Keep string-literal-label + value pairs on a line.Daniel Jasper2016-12-133-56/+77
| | | | | | | | | | | | | | | | | | | | | We have previously done that for <<-operators. This patch also adds this logic for "," and "+". Before: string v = "aaaaaaaaaaaaaaaa: " + aaaaaaaaaaaaaaaa + "aaaaaaaaaaaaaaaa: " + aaaaaaaaaaaaaaaa + "aaaaaaaaaaaaaaaa: " + aaaaaaaaaaaaaaaa; string v = StrCat("aaaaaaaaaaaaaaaa: ", aaaaaaaaaaaaaaaa, "aaaaaaaaaaaaaaaa: ", aaaaaaaaaaaaaaaa, "aaaaaaaaaaaaaaaa: ", aaaaaaaaaaaaaaaa); After: string v = "aaaaaaaaaaaaaaaa: " + aaaaaaaaaaaaaaaa + "aaaaaaaaaaaaaaaa: " + aaaaaaaaaaaaaaaa + "aaaaaaaaaaaaaaaa: " + aaaaaaaaaaaaaaaa; string v = StrCat("aaaaaaaaaaaaaaaa: ", aaaaaaaaaaaaaaaa, "aaaaaaaaaaaaaaaa: ", aaaaaaaaaaaaaaaa, "aaaaaaaaaaaaaaaa: ", aaaaaaaaaaaaaaaa); llvm-svn: 289531
* [mips] Fix comment to respect 80 chars per line; NFCSimon Dardis2016-12-131-6/+6
| | | | llvm-svn: 289530
* [mips] Fix compact branch hazard detectionSimon Dardis2016-12-132-22/+200
| | | | | | | | | | | | | In certain cases it is possible that transient instructions such as %reg = IMPLICIT_DEF as a single instruction in a basic block to reach the MipsHazardSchedule pass. This patch teaches MipsHazardSchedule to properly look through such cases. Reviewers: vkalintiris, zoran.jovanovic Differential Revision: https://reviews.llvm.org/D27209 llvm-svn: 289529
* [GlobalISel] Move extendRegister where it belongs. NFCIDiana Picus2016-12-132-28/+29
| | | | | | Apparently I missed this one when I moved ValueHandler back in r288658. Sorry! llvm-svn: 289528
* [ELF] Add R_ARM_RELATIVE to relocations that can be applied to GotSectionPeter Smith2016-12-132-0/+26
| | | | | | | | | | | | | | When compiling -fpie and linking with the --pie option the R_ARM_GOTBREL relocation to D is resolved by writing the value of D into the .got slot and emitting an R_ARM_RELATIVE relocation for it. This changes adds the R_ARM_RELATIVE relocation to the switch in relocateOne() so we can process the GotSection relocation to write the value of the variable as well as emitting the dynamic relocation. Differential revision: https://reviews.llvm.org/D27678 llvm-svn: 289527
* [sancov] Mark as unstable on ARM, not XFAIL, since it does pass on some configRenato Golin2016-12-132-4/+4
| | | | llvm-svn: 289526
* clang-format: Improve braced-list detection.Daniel Jasper2016-12-132-2/+15
| | | | | | | | | | | Before: vector<int> v { 12 } GUARDED_BY(mutex); After: vector<int> v{12} GUARDED_BY(mutex); llvm-svn: 289525
* [clang-tidy] Add check for redundant function pointer dereferencesMalcolm Parsons2016-12-138-0/+130
| | | | | | | | | | Reviewers: alexfh, aaron.ballman, hokein Subscribers: mgorny, JDevlieghere, cfe-commits Differential Revision: https://reviews.llvm.org/D27520 llvm-svn: 289524
* [X86][InstCombine] Fix SimplifyDemandedVectorElts to handle frcz scalar ↵Craig Topper2016-12-133-0/+40
| | | | | | | | | | intrinsics correctly. Only the lower bits of the input element are used. And only the lower element can be undef since the upper bits are zeroed. Have InstCombineCalls call SimplifyDemandedVectorElts for these intrinsics to reuse this support. llvm-svn: 289523
* llvm/test/Transforms/PGOProfile/noreturncall.ll REQUIRES asserts due to ↵NAKAMURA Takumi2016-12-131-0/+1
| | | | | | -debug-only. llvm-svn: 289522
* [PGO] Fix insane counts due to nonreturn callsRong Xu2016-12-133-2/+68
| | | | | | | | | | | | | | | | Summary: Since we don't break BBs for function calls. We might get some insane counts (wrap of unsigned) in the presence of noreturn calls. This patch sets these counts to zero instead of the wrapped number. Reviewers: davidxl Subscribers: xur, eraman, llvm-commits Differential Revision: https://reviews.llvm.org/D27602 llvm-svn: 289521
* Small tweaks to the markup in StructuredDataPlugins.Jason Molenda2016-12-131-6/+6
| | | | llvm-svn: 289520
* [SCCP] Debug diagnostic goes under DEBUG(). NFCI.Davide Italiano2016-12-131-1/+1
| | | | llvm-svn: 289519
* Touch-up the markup of the DarwinLog.md documentation.Jason Molenda2016-12-131-29/+29
| | | | llvm-svn: 289518
* [AVR] Add an 'relax memory operation' passDylan McKay2016-12-136-2/+188
| | | | | | | | | | | | | | | | | | | | | | Summary: This pass will be used to relax instructions which use out of bounds memory accesses to equivalent operations that can work with the addresses. The pass currently implements relaxation for the STDWPtrQRr instruction. Without this pass, an assertion error would be hit in the pseudo expansion pass. In the future, we will need to add more instructions to this pass. We can do that on a case-by-case basic. Reviewers: arsenm, kparzysz Subscribers: wdng, llvm-commits, mgorny Differential Revision: https://reviews.llvm.org/D27650 llvm-svn: 289517
* [sanitizers] dso order is random, test shouldnt depend on itMike Aizatsky2016-12-131-3/+3
| | | | llvm-svn: 289516
* [sanitizers] powerpc4 is also unsupported platformMike Aizatsky2016-12-132-2/+2
| | | | llvm-svn: 289515
* CodeGen: clean up -Wpedantic warning (NFC)Saleem Abdulrasool2016-12-131-1/+1
| | | | | | | | | | lib/CodeGen/CGExpr.cpp:2511:2: warning: extra ';' [-Wpedantic] }; ^ Clean up warning from gcc 6. llvm-svn: 289514
* [libc++abi] Mark failing test on Darwin as XFAILShoaib Meenai2016-12-131-0/+4
| | | | | | | | | | | | | The macOS thread-local variable finalizer routines do not handle the case where a termination function registers another termination function correctly, causing this test to fail. I've filed a radar for this; mark the test XFAIL in the meantime. See [1] for more details. [1] http://lists.llvm.org/pipermail/cfe-dev/2016-November/051376.html Differential Revision: https://reviews.llvm.org/D27434 llvm-svn: 289513
* [libcxx] [test] Fix size_t-to-int truncation warnings in syserr.hash.Stephan T. Lavavej2016-12-132-4/+4
| | | | | | | | | | | | | | | | After r289363, these tests were triggering MSVC x64 warning C4267 "conversion from 'size_t' to 'int', possible loss of data" by taking 0, 2, and 10 as std::size_t, then constructing error_code(int, const error_category&) or error_condition(int, const error_category&) from that (N4618 19.5.3.2 [syserr.errcode.constructors]/3, 19.5.4.2 [syserr.errcondition.constructors]/3). The fix is simple: take these ints as int, pass them to the int-taking constructor, and perform a value-preserving static_cast<std::size_t> when comparing them to `std::size_t result`. Fixes D27691. llvm-svn: 289512
* [analyzer] Run clang-format and fix styleDominic Chen2016-12-133-213/+193
| | | | | | | | | | | | Summary: Split out formatting and style changes from D26061 Reviewers: zaks.anna, dcoughlin Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D26691 llvm-svn: 289511
* [peephole] Enhance folding logic to work for STATEPOINTsPhilip Reames2016-12-135-76/+64
| | | | | | | | | | | | | | The general idea here is to get enough of the existing restrictions out of the way that the already existing folding logic in foldMemoryOperand can kick in for STATEPOINTs and fold references to immutable stack slots. The key changes are: Support for folding multiple operands at once which reference the same load Support for folding multiple loads into a single instruction Walk all the operands of the instruction for varidic instructions (this is a bug fix!) Once this lands, I'll post another patch which refactors the TII interface here. There's nothing actually x86 specific about the x86 code used here. Differential Revision: https://reviews.llvm.org/D24103 llvm-svn: 289510
* [Statepoints] Reuse stack slots more than once within a basic blockPhilip Reames2016-12-132-4/+39
| | | | | | | | | | The stack slot reuse code had a really amusing bug. We ended up only reusing a stack slot exact once (initial use + reuse) within a basic block. If we had a third statepoint to process, we ended up allocating a new set of stack slots. If we crossed a basic block boundary, the set got cleared. As a result, code which is invoke heavy doesn't see the problem, but multiple calls within a basic block does. Net result: as we optimize invokes into calls, lowering gets worse. The root error here is that the bitmap uses by the custom allocator wasn't kept in sync. The result was that we ended up resizing the bitmap on the next statepoint (to handle the cross block case), reset the bit once, but then never reset it again. Differential Revision: https://reviews.llvm.org/D25243 llvm-svn: 289509
* [sanitizers] disabling dso test as well where appropriateMike Aizatsky2016-12-131-1/+1
| | | | llvm-svn: 289508
* [sanitizers] trace-pc-guard doesn't work on mac as wellMike Aizatsky2016-12-131-1/+1
| | | | | | | | fatal error: error in backend: Global variable '__sancov_gen_' has an invalid section specifier '__sancov_guards': mach-o section specifier requires a segment and section separated by a comma. llvm-svn: 289507
* [libFuzzer] don't require extra flags with -minimize_crash=1 (default to ↵Kostya Serebryany2016-12-132-10/+16
| | | | | | -max_total_time=600). Also respect exact_artifact_path when outputting the end result llvm-svn: 289506
* [sanitizers] sancov really works on x86 onlyMike Aizatsky2016-12-131-1/+1
| | | | llvm-svn: 289505
* Missed a file in r289503.Chris Bieneman2016-12-131-0/+2
| | | | llvm-svn: 289504
* [LIT] Fix system-windowsChris Bieneman2016-12-132-2/+2
| | | | | | | | Turns out if you were on windows and your default target wasn't windows the system-windows feature wasn't getting enabled. This fixes that and updates the coff-dwarf test to rely on the new "target-windows" feature. That test was the reason why system-windows was changed to not always be enabled on Windows hosts. llvm-svn: 289503
* Revert "Suppress LLVM::tools/llvm-symbolizer/coff-dwarf.test for mingw, for ↵Chris Bieneman2016-12-131-1/+1
| | | | | | | | now." This reverts commit r249937. llvm-svn: 289502
* [XRay][compiler-rt] Use explicit comparisons in unit tests.Dean Michael Berris2016-12-131-7/+8
| | | | | | | | | | | | | | | | | | | | | | | | | Summary: This should improve the error messages generated providing a bit more information when the failures are printed out. One example of a contrived error looks like: ``` Expected: (Buffers.getBuffer(Buf)) != (std::error_code()), actual: system:0 vs system:0 ``` Because we're using error codes, the default printing gets us more useful information in case of failure. This is a follow-up on D26232. Reviewers: rSerge Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D27495 llvm-svn: 289501
* Simplify the test. NFC.Rafael Espindola2016-12-121-220/+16
| | | | llvm-svn: 289499
* [sancov] __sanitizer_dump_coverage apiMike Aizatsky2016-12-128-5/+296
| | | | | | | | Subscribers: kubabrecka, mgorny Differential Revision: https://reviews.llvm.org/D26758 llvm-svn: 289498
* [llvm-config] Unsupported should be win32Chris Bieneman2016-12-121-1/+1
| | | | | | Hopefully this will fix the failing Windows bot. llvm-svn: 289497
* Stop lying about pointers' required alignments.Tim Northover2016-12-124-53/+0
| | | | | | | | | | | | | | | | These extra specializations were added in the depths of history (r67984 from 2009) and are clearly problematic now. The pointers actually are aligned to the default (8 bytes), since otherwise UBsan would be complaining loudly. I *think* it originally made sense because there was no "alignof" to infer the correct value so the generic case went with what malloc returned (8-byte aliged objects), and on 32-bit machines this specialization was correct. It became wrong when we started compiling for 64-bit, and caused a UBSan failure when we tried to put a ValueHandle into a DenseMap. Should fix the Green Dragon UBSan bot. llvm-svn: 289496
* [libFuzzer] Implement Timers for Windows.Marcos Pividori2016-12-121-1/+32
| | | | | | | | | | Implemented timeouts for Windows using TimerQueueTimers. Timers are used to supervise the time of execution of the callback function that is being fuzzed. Differential Revision: https://reviews.llvm.org/D27237 llvm-svn: 289495
* Revert "[Modules] Make header inclusion order from umbrella dirs deterministic"Bruno Cardoso Lopes2016-12-121-11/+3
| | | | | | | | | | | Reverts commit r289478. This broke http://lab.llvm.org:8011/builders/clang-ppc64be-linux/builds/2070 (and maybe http://lab.llvm.org:8011/builders/clang-x86_64-linux-selfhost-modules-2/builds/2246) llvm-svn: 289494
* [x86] fix test specificationsSanjay Patel2016-12-121-4/+4
| | | | llvm-svn: 289493
* [x86] fix test specifications and auto-generate checksSanjay Patel2016-12-121-29/+38
| | | | llvm-svn: 289492
* [CMake] Multi-target builtins buildPetr Hosek2016-12-122-6/+43
| | | | | | | | | | | | | | This change enables building builtins for multiple different targets using LLVM runtimes directory. To specify the builtin targets to be built, use the LLVM_BUILTIN_TARGETS variable, where the value is the list of targets. To pass a per target variable to the builtin build, you can set BUILTINS_<target>_<variable> where <variable> will be passed to the builtin build for <target>. Differential Revision: https://reviews.llvm.org/D26652 llvm-svn: 289491
* Revert "Disable all llvm-config tests for now, will investigate later"Chris Bieneman2016-12-121-2/+0
| | | | | | | | This reverts commit r260386. These tests all pass for me locally. I have no idea if they will pass on all configurations, so I'll watch the bots closely. llvm-svn: 289490
* [compiler-rt] Support building builtins for a single targetPetr Hosek2016-12-123-11/+26
| | | | | | | | | This is used when building builtins for multiple targets as part of LLVM runtimes. Differential Revision: https://reviews.llvm.org/D26653 llvm-svn: 289489
* [llvm-config] Fix bug where `--libfiles` and `--names` would produceDan Liew2016-12-121-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | incorrect output when LLVM is built with `LLVM_BUILD_LLVM_DYLIB`. `llvm-config` previously produced output like this ``` $ llvm-config --libfiles /usr/lib/liblibLLVM-4.0svn.so.so $ llvm-config --libnames liblibLLVM-4.0svn.so.so ``` The library prefix and shared library extension were added to the library name twice which was wrong. I wanted to write a test cases for this but it looks like **all** `llvm-config` tests were disabled by r260386 so I'll leave this for now. Subscribers: llvm-commits, tstellarAMD Reviewers: beanz, DiamondLovesYou, axw Differential Revision: https://reviews.llvm.org/D27393 llvm-svn: 289488
* Revert "[Headers] Add #include_next for tgmath.h on Darwin"Bruno Cardoso Lopes2016-12-123-25/+0
| | | | | | | | | Reverts r289181: it's currently breaking modules using simd.h in 10.12 SDK. This reverts commit 6e73e3464e96a4e00492c24aa790d36e1adb5702. llvm-svn: 289487
* Avoid infinite loops in branch foldingAndrew Kaylor2016-12-123-7/+83
| | | | | | Differential Revision: https://reviews.llvm.org/D27582 llvm-svn: 289486
* clang-format to fix post-commit feedbackChris Bieneman2016-12-121-3/+2
| | | | | | Thanks dblaikie! llvm-svn: 289485
OpenPOWER on IntegriCloud