summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Simplify createPhdrs. NFC.Rui Ueyama2017-02-011-36/+22
| | | | | | | | Instead of creating multiple PHDRs in a single loop, this patch runs one for loop for each PHDR type. I think this improves code readability. llvm-svn: 293832
* Update xcodeproj to track ConvertEnum.cpp et al being removed.Jason Molenda2017-02-011-18/+0
| | | | llvm-svn: 293831
* [libFuzzer] Disable afl tests on non-posix systems.Marcos Pividori2017-02-012-0/+4
| | | | | | | | AflDriver is not supported on non posix systems. Differential Revision: https://reviews.llvm.org/D29422 llvm-svn: 293830
* [libFuzzer] Disable equivalence tests on non posix systems.Marcos Pividori2017-02-011-0/+2
| | | | | | | | We can not run this test until we implement shared memory on Windows. Differential Revision: https://reviews.llvm.org/D29421 llvm-svn: 293829
* [libFuzzer] Isolate merge tests that require posix.Marcos Pividori2017-02-012-8/+23
| | | | | | Differential Revision: https://reviews.llvm.org/D29420 llvm-svn: 293828
* [libFuzzer] Add features `windows` and `posix` for lit tests.Marcos Pividori2017-02-013-0/+11
| | | | | | | | | | | | Add 2 features: posix and windows. Sometimes we want some specific tests only for posix and we use: REQUIRES: posix Sometimes we want some specific tests only for windows and we use: REQUIRES: windows Differential Revision: https://reviews.llvm.org/D29418 llvm-svn: 293827
* [libFuzzer] Accept different extensions.Marcos Pividori2017-02-011-1/+1
| | | | | | Differential Revision: https://reviews.llvm.org/D29417 llvm-svn: 293826
* [libFuzzer] Fix test because cmd prompt does not expand wildcard.Marcos Pividori2017-02-011-1/+1
| | | | | | | | | | Commands should expand the wildcards on Windows, the cmd prompt doesn't. Because of that sancov was not finding the needed file. To deal with this, we use ls and xargs from gnu win utils. Differential Revision: https://reviews.llvm.org/D29374 llvm-svn: 293825
* Revert r293820: Return Error instead of bool from mergeTypeStreams().Rui Ueyama2017-02-013-25/+20
| | | | | | It broke buildbots. llvm-svn: 293824
* [ValueTracking] remove a FIXME for something we don't want to do; NFCSanjay Patel2017-02-012-6/+1
| | | | | | | | The comment was added with: https://reviews.llvm.org/rL293773 ...but there would be a cost to implement this and possibly no payoff. llvm-svn: 293823
* [CMake] Update unit tests with accurate dependenciesChris Bieneman2017-02-0118-5/+125
| | | | | | This is extending the updates from r293696 to the LLDB unit tests. llvm-svn: 293821
* Return Error instead of bool from mergeTypeStreams().Rui Ueyama2017-02-013-20/+25
| | | | | | | | | | Previously, mergeTypeStreams returns only true or false, so it was impossible to know the reason if it failed. This patch changes the function signature so that it returns an Error object. Differential Revision: https://reviews.llvm.org/D29362 llvm-svn: 293820
* Remove an assertion that doesn't hold when mixing -g and -gmlt throughPaul Robinson2017-02-012-1/+100
| | | | | | | | LTO. Part of PR31437. Differential Revision: http://reviews.llvm.org/D29310 llvm-svn: 293818
* Repoint 'missing typename' diagnostic to the location where 'typename' ↵Richard Smith2017-02-012-2/+3
| | | | | | should be added. llvm-svn: 293817
* fix typos; NFCSanjay Patel2017-02-011-4/+4
| | | | llvm-svn: 293816
* Fix hole in our enforcement of rule requiring 'typename' prior to a dependentRichard Smith2017-02-019-28/+100
| | | | | | | | | | | name. If the dependent name happened to end in a template-id (X<T>::Y<U>), we would fail to notice that the 'typename' keyword is missing when resolving it to a type. It turns out that GCC has a similar bug. If this shows up in much real code, we can easily downgrade this to an ExtWarn. llvm-svn: 293815
* [InstCombine] move folds for shift-shift pairs; NFCISanjay Patel2017-02-012-48/+86
| | | | | | | | | | | Although this is 'no-functional-change-intended', I'm adding tests for shl-shl and lshr-lshr pairs because there is no existing test coverage for those folds. It seems like we should be able to remove some code from foldShiftedShift() at this point because we're handling those patterns on the general path. llvm-svn: 293814
* Shut up another GCC warning about operator precedence. NFC.Michael Kuperstein2017-02-011-1/+1
| | | | llvm-svn: 293812
* [ELF] Handle multiple discontiguous .note sectionsPetr Hosek2017-02-014-5/+113
| | | | | | | | | | | | | | There could be multiple discontiguous output .note sections in which case we need to put these into separate PT_NOTE segments rather then placing them into a single segment. Where possible, we could reorder the input sections to make sure that all .note are layed out next to each other to avoid creation multiple PT_NOTE segments, but even in that case, it's still possible to construct a discontiguous case e.g. by using a linker script. Differential Revision: https://reviews.llvm.org/D29364 llvm-svn: 293811
* [CodeGen] Update test after recent changes in llvm (r293799).Davide Italiano2017-02-011-1/+1
| | | | llvm-svn: 293810
* AMDGPU: Allow clustering flat memory operationsMatt Arsenault2017-02-011-1/+2
| | | | llvm-svn: 293809
* [Sema][ObjC] Don't pass a DeclRefExpr that doesn't reference a VarDeclAkira Hatanaka2017-02-012-5/+18
| | | | | | | | | | to WeakObjectProfileTy's constructor. This fixes an assertion failure in WeakObjectProfileTy's constructor. rdar://problem/30112633 llvm-svn: 293808
* Break some dependencies in lldbUtility.Zachary Turner2017-02-0125-1423/+1031
| | | | | | Differential Revision: https://reviews.llvm.org/D29359 llvm-svn: 293806
* [cmake] Remove VERSION property from executable targetsPavel Labath2017-02-013-7/+0
| | | | | | | | | | | | | | | | Summary: Currently, in the default configuration, the "install" target will install all llvm executables unversioned, except for three lldb tools which will be installed versioned (with a non-versioned symlink). This rectifies that situation. Reviewers: beanz, sylvestre.ledru, mgorny Subscribers: ki.stfu, lldb-commits Differential Revision: https://reviews.llvm.org/D29126 llvm-svn: 293803
* [JumpThread] No need to erase BB from LoopHeaders. NFC.Jun Bum Lim2017-02-011-14/+1
| | | | | | | | | | | | | | Summary: No need to try to ease BB from LoopHeaders as we already know that BB is not in LoopHeaders. Reviewers: hsung, majnemer, mcrosier, haicheng, rengolin Reviewed By: rengolin Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D29232 llvm-svn: 293802
* [SCCP] Make sure we get this case right without noinline.Davide Italiano2017-02-011-1/+1
| | | | | | | Thanks to Hal for pointing out in the post-commit review of r293727. llvm-svn: 293801
* Drop 'dllimport' when redeclaring inline function template without the ↵Hans Wennborg2017-02-013-41/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | attribute (PR31695) For non-template dllimport functions, MSVC allows providing an inline definition without spelling out the attribute again. In the example below, f remains a dllimport function. __declspec(dllimport) int f(); inline int f() { return 42; } int useit() { return f(); } However, for a function template, not putting dllimport on the redeclaration causes it to be dropped. In the example below, f is not dllimport. template <typename> __declspec(dllimport) int f(); template <typename> inline int f() { return 42; } int useit() { return f<int>(); } This patch makes Clang match MSVC for the second example. MSVC does not warn about the attribute being dropped in the example above, but I think we should. (MSVC does warn if the inline keyword isn't used.) Differential Revision: https://reviews.llvm.org/D29152 llvm-svn: 293800
* [IPSCCP] Don't propagate return values of functions marked as noinline.Davide Italiano2017-02-012-1/+27
| | | | | | | | | | | | This tries to address what Hal defined (in the post-commit review of r293727) a long-standing problem with noinline, where we end up de facto inlining trivial functions e.g. __attribute__((noinline)) int patatino(void) { return 5; } because of return value propagation. llvm-svn: 293799
* [mips] Parse the 'bopt' and 'nobopt' directives in IAS.Simon Dardis2017-02-012-0/+24
| | | | | | | | | | | | | | | The GAS assembler supports the ".set bopt" directive but according to the sources it doesn't do anything. It's supposed to optimize branches by filling the delay slot of a branch with it's target. This patch teaches the MIPS asm parser to accept both and warn in the case of 'bopt' that the bopt directive is unsupported. This resolves PR/31841. Thanks to Sean Bruno for reporting the issue! llvm-svn: 293798
* [pdb] Add a new command for analyzing hash collisions.Zachary Turner2017-02-016-0/+228
| | | | | | | | | | This introduces the `analyze` subcommand. For now there is only one option, to analyze hash collisions in the type streams. In the future, however, we could add many more things here, such as performing size analyses, compacting, and statistics about the type of records etc. llvm-svn: 293795
* [X86] Extend single-source shuffle cost test to test more arches. NFC.Michael Kuperstein2017-02-011-22/+129
| | | | llvm-svn: 293793
* Strip file path from the -o option while creating reproduce.txt.Rafael Espindola2017-02-012-0/+15
| | | | | | | | | | | | | | | This is a fix for Bugzilla 28579. The problem is that in --reproduce links the file path in -o option is copied verbatim. When "lld @response.txt" link is run against the extracted test case, if -o contains anything other that a plain file name, the link will likely fail because the target directory in -o may not exists. Stripping the directory path will create the output file in the top level test directory. Patch by Dmitry Mikulin! llvm-svn: 293792
* [libFuzzer] Do not use llvm-objdump for disassembling a DSO.Marcos Pividori2017-02-011-4/+1
| | | | | | | | | | | | | | | | | When disassembling a DSO, for calls to functions from the PLT, llvm-objdump only prints the offset from the PLT, like: <.plt+0x30>. While objdump and dumpbin print the function name, like: <__sanitizer_cov_trace_pc_guard@plt> When analyzing the coverage in libFuzzer we dissasemble and look for the calls to __sanitizer_cov_trace_pc_guard. So, this fails when using llvm-objdump on a DSO. Differential Revision: https://reviews.llvm.org/D29372 llvm-svn: 293791
* [libFuzzer] Properly check if we can use dumpbin.Marcos Pividori2017-02-011-1/+1
| | | | | | | | The flag "/sumary" is necessary, otherwise it returns a non-zero value. Differential Revision: https://reviews.llvm.org/D29371 llvm-svn: 293790
* [ImplicitNullChecks] NFC Fix the implicit-null-checks.mir testSanjoy Das2017-02-011-14/+14
| | | | | | | | | | | | | | | | | | | Summary: Currently the test implicit-null-checks.mir crashes if we run llc with -enable-implicit-null-checks -start-before implicit-null-checks options. Change fixes the RET instruction causing the crash. Patch by Serguei Katkov! Reviewers: sanjoy, reames Reviewed By: sanjoy Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D29390 llvm-svn: 293789
* [LV] Move interleaved access helper functions to VectorUtils (NFC)Matthew Simpson2017-02-015-127/+147
| | | | | | | | | | | | This patch moves some helper functions related to interleaved access vectorization out of LoopVectorize.cpp and into VectorUtils.cpp. We would like to use these functions in a follow-on patch that improves interleaved load and store lowering in (ARM/AArch64)ISelLowering.cpp. One of the functions was already duplicated there and has been removed. Differential Revision: https://reviews.llvm.org/D29398 llvm-svn: 293788
* [CodeGen][ObjC] Avoid asserting on block pointer types inAlex Lorenz2017-02-012-1/+29
| | | | | | | | isPointerZeroInitializable rdar://30111891 llvm-svn: 293787
* Make test case resilient to \ or / directory separatorsDavid Blaikie2017-02-011-3/+3
| | | | llvm-svn: 293786
* Add missing test cases from r293697/D29094David Blaikie2017-02-014-0/+49
| | | | | | Differential Revision: https://reviews.llvm.org/D29368 llvm-svn: 293785
* Fix android build of the new process launcherPavel Labath2017-02-011-0/+1
| | | | | | | Android does not define the "cross-platform" symbol PT_TRACE_ME. Define it ourselves, so we can keep the rest of the code generic. llvm-svn: 293779
* [InstCombine] Allow InstCombine to merge adjacent guardsSanjoy Das2017-02-012-14/+24
| | | | | | | | | | | | | | | | | | | | Summary: If there are two adjacent guards with different conditions, we can remove one of them and include its condition into the condition of another one. This patch allows InstCombine to merge them by the following pattern: guard(a); guard(b) -> guard(a & b). Reviewers: reames, apilipenko, igor-laevsky, anna, sanjoy Reviewed By: sanjoy Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D29378 llvm-svn: 293778
* [X86][SSE] Remove unused argument. NFCI.Simon Pilgrim2017-02-011-9/+6
| | | | llvm-svn: 293777
* AMDGPU: Improve nsw/nuw/exact when promoting uniform i16 opsMatt Arsenault2017-02-012-62/+85
| | | | | | | | | | | | These were simply preserving the flags of the original operation, which was too conservative in most cases and incorrect for mul. nsw/nuw may be needed for some combines to cleanup messes when intermediate sext_inregs are introduced later. Tested valid combinations with alive. llvm-svn: 293776
* [ImplicitNullCheck] Extend canReorder scopeSanjoy Das2017-02-013-7/+142
| | | | | | | | | | | | | | | | | | Summary: This change allows a re-order of two intructions if their uses are overlapped. Patch by Serguei Katkov! Reviewers: reames, sanjoy Reviewed By: sanjoy Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D29120 llvm-svn: 293775
* Do not pass non-POD type variables through variadic functionKamil Rytarowski2017-02-015-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: Cannot pass object of non-POD type 'const CMIUtilString' through variadic function. This behavior is undefined according to C++11 5.2.2/7: > Passing a potentially-evaluated argument of class type having a non-trivial copy constructor, a non-trivial move contructor, or a non-trivial destructor, with no corresponding parameter, is conditionally-supported with implementation-defined semantics. Replace SetErrorDescriptionn(errMsg); with SetErrorDescription(errMsg); Original patch by Tobias Nygren (NetBSD). Sponsored by <The NetBSD Foundation> Reviewers: clayborg, labath, emaste, joerg, ki.stfu Reviewed By: labath, ki.stfu Subscribers: tnn, ki.stfu, #lldb Tags: #lldb Differential Revision: https://reviews.llvm.org/D29256 llvm-svn: 293774
* [ValueTracking] avoid crashing from bad assumptions (PR31809)Sanjay Patel2017-02-012-0/+53
| | | | | | | | | | | | | A program may contain llvm.assume info that disagrees with other analysis. This may be caused by UB in the program, so we must not crash because of that. As noted in the code comments: https://llvm.org/bugs/show_bug.cgi?id=31809 ...we can do better, but this at least avoids the assert/crash in the bug report. Differential Revision: https://reviews.llvm.org/D29395 llvm-svn: 293773
* [mips] Fix an initialization issue with MipsABIInfo in MipsTargetELFStreamerSimon Dardis2017-02-011-0/+12
| | | | | | | | | | | | | | DebugInfoDWARFTests is the only user so far which initializes the MCObjectStreamer without initializing the ASMParser. The MIPS backend relies on the ASMParser to initialize the MipsABIInfo object and to update the target streamer with it. This should turn the mips buildbots green. Reviewers: atanasyan, zoran.jovanovic Differential Revision: https://reviews.llvm.org/D28025 llvm-svn: 293772
* [clang-tidy] misc-argument-comment: ignore comments after argumentsAlexander Kornienko2017-02-012-2/+7
| | | | llvm-svn: 293771
* Document that LaunchProcessPosixSpawn is used on NetBSDKamil Rytarowski2017-02-011-1/+1
| | | | | | | | No functional change. Sponsored by <The NetBSD Foundation> llvm-svn: 293770
* [PowerPC] Fix sjlj pseduo instructions to use G8RC_NOX0 register classKit Barton2017-02-012-2/+32
| | | | | | | | | | | | | | The the following instructions: - LD/LWZ (expanded from sjLj pseudo-instructions) - LXVL/LXVLL vector loads - STXVL/STXVLL vector stores all require G8RC_NO0X class registers for RA. Differential Revision: https://reviews.llvm.org/D29289 Committed for Lei Huang llvm-svn: 293769
OpenPOWER on IntegriCloud