summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [clangd] Allow to override contents of the file during completion.Ilya Biryukov2017-06-133-10/+93
| | | | | | | | | | | | | | | | Summary: This is a reapplied r305280 with a fix to the crash found by build bots (StringRef to an out-of-scope local std::string). Reviewers: krasimir Reviewed By: krasimir Subscribers: klimek, cfe-commits Differential Revision: https://reviews.llvm.org/D34146 llvm-svn: 305291
* [MIPS] BuildCondBr should preserve MO flagsSimon Dardis2017-06-132-6/+29
| | | | | | | | | | | | | | | | | While simplifying branches in the MachineInstr representation, the routine BuildCondBr must preserve flags on register MachineOperands. In particular, it must preserve the <undef> flag. This fixes a bug that is unlikely to occur in any real scenario, but which bugpoint is likely to introduce. Patch By Nick Johnson! Reviewers: ahatanak, sdardis Differential Revision: https://reviews.llvm.org/D34041 llvm-svn: 305290
* [Hexagon] Stop pmpy recognition when shift conversion failsKrzysztof Parzyszek2017-06-132-1/+50
| | | | | | | The conversion of shifts from right shifts to left shifts may fail. In such case, the pmpy recognition cannot proceed. llvm-svn: 305289
* [ARM] Add scheduling classes for VFNM[AS]Oliver Stannard2017-06-132-6/+50
| | | | | | | | | | The VFNM[AS] instructions did not have scheduling information attached, which was causing assertion failures with the Cortex-A57 scheduling model and -fp-contract=fast, because the Cortex-A57 sched model claims to be complete. Differential Revision: https://reviews.llvm.org/D34139 llvm-svn: 305288
* Revert "Revert r301742 which made ExprConstant checking apply to all ↵Diana Picus2017-06-1316-65/+41
| | | | | | | | | full-exprs." This reverts commit r305239 because it broke the buildbots (the diag-flags.cpp test is failing). llvm-svn: 305287
* Mark TestCallThatRestarts as flaky on androidPavel Labath2017-06-131-0/+2
| | | | | | | | | | | | | This test started being flaky since r303848 (RunThreadPlan: Fix halting logic in IgnoreBreakpoints = false). I am not reverting that, as I am confident that actually fixed a problem. A more likely explanation is that there is still one corner case that is not handled correctly there. Marking the test as flaky until I get a chance to investigate. I also mark the test as no-debug-info-dependend -- it stresses expression evaluation, as far as debug info goes, the test if extremely simple. llvm-svn: 305286
* Strip UTF8 BOM that got added in rL305091Simon Pilgrim2017-06-131-1/+0
| | | | | | Seems my recent move to VS2017 has resulted in a few text editor issues..... llvm-svn: 305285
* [X86][SSE] Refactor getTargetConstantBitsFromNode to avoid large APInts ↵Simon Pilgrim2017-06-131-36/+66
| | | | | | | | | | (PR32037) Much of PR32037's compile time regression is due to getTargetConstantBitsFromNode always creating large (>64bit) APInts during the bitcasting from the source data to the destination bitwidth. This commit avoids this bitcast stage if the data is already the correct bitwidth. llvm-svn: 305284
* Revert "[clangd] Allow to override contents of the file during completion."Ilya Biryukov2017-06-133-91/+10
| | | | | | | This caused buildbots failures, reverting until we'll find out what's wrong. llvm-svn: 305283
* Strip UTF8 BOM that got added for some reason in rL305163Simon Pilgrim2017-06-131-1/+1
| | | | llvm-svn: 305282
* tsan: fix reading of mutex flagsDmitry Vyukov2017-06-136-7/+53
| | | | | | | SyncVar::IsFlagSet returns true if any flag is set. This is wrong. Check the actual requested flag. llvm-svn: 305281
* [clangd] Allow to override contents of the file during completion.Ilya Biryukov2017-06-133-10/+91
| | | | | | | | | | | | Reviewers: krasimir Reviewed By: krasimir Subscribers: klimek, cfe-commits Differential Revision: https://reviews.llvm.org/D34107 llvm-svn: 305280
* [clangd] Use 'std::string' for VFSTag instead of 'int'Ilya Biryukov2017-06-132-5/+7
| | | | | | | | | | | | | | Reviewers: krasimir Reviewed By: krasimir Subscribers: klimek, cfe-commits Tags: #clang-tools-extra Differential Revision: https://reviews.llvm.org/D34106 llvm-svn: 305279
* Set a default value for LIBCXXABI_LIBDIR_SUFFIX, fixes installing into lib64 ↵Ismail Donmez2017-06-131-0/+2
| | | | | | after r304374 llvm-svn: 305278
* PPCISelLowering.cpp: Fix warnings in r305214. [-Wdocumentation]NAKAMURA Takumi2017-06-131-3/+3
| | | | llvm-svn: 305277
* [AVX-512] Mark masked VPCMP instructions as commutable.Craig Topper2017-06-133-14/+40
| | | | llvm-svn: 305276
* [AVX-512] Mark masked version of vpcmpeq as being commutable.Craig Topper2017-06-132-0/+15
| | | | llvm-svn: 305275
* [X86] Add masked integer compare instructions to load folding tables.Craig Topper2017-06-132-0/+86
| | | | llvm-svn: 305274
* tsan: fix pedantic warningsDmitry Vyukov2017-06-131-3/+5
| | | | | | ISO C++ does not allow ?: with omitted middle operand llvm-svn: 305273
* clang-format: add option to merge empty function bodyFrancois Ferrand2017-06-134-4/+152
| | | | | | | | | | | | | | | | | | | | Summary: This option supplements the AllowShortFunctionsOnASingleLine flag, to merge empty function body at the beginning of the line: e.g. when the function is not short-enough and breaking braces after function. int f() {} Reviewers: krasimir, djasper Reviewed By: djasper Subscribers: klimek, cfe-commits Differential Revision: https://reviews.llvm.org/D33447 llvm-svn: 305272
* Read /out:%t which was (accidentally?) removed in r305258.Daniel Jasper2017-06-131-1/+1
| | | | | | Without it, the source directory gets polluted. llvm-svn: 305271
* [Lexicon] Add GVNBrian Gesiak2017-06-131-0/+7
| | | | | | | | | | | | | | Summary: Add a lexicon entry for global value numbering. Reviewers: davide, majnemer Reviewed By: davide Subscribers: llvm-commits, inouehrs Differential Revision: https://reviews.llvm.org/D33664 llvm-svn: 305270
* [docs] Add some ubsan changes to the release notesVedant Kumar2017-06-131-0/+25
| | | | llvm-svn: 305269
* Add a test with an empty input range - should do nothingMarshall Clow2017-06-131-0/+6
| | | | llvm-svn: 305268
* Inliner: Avoid calling shouldInline until it's absolutely necessaryDavid Blaikie2017-06-131-15/+21
| | | | | | | | | This restores the order of evaluation (& conditionalized evaluation) of isTriviallyDeadInstruction, InlineHistoryIncludes, and shouldInline (with the addition of a shouldInline call after isTriviallyDeadInstruction) from before r305245. llvm-svn: 305267
* [WebAssembly] Fix symbol type for addresses of external functionsSam Clegg2017-06-133-4/+35
| | | | | | | | | | | | | | These symbols were previously not being marked as functions so were appearing as globals instead, and with the incorrect relocation type. Without this fix, objects that take address of external functions include them as global imports rather than function imports which then fails at link time. Differential Revision: https://reviews.llvm.org/D34068 llvm-svn: 305263
* Fix signed/unsigned comparison warning; NFCGeorge Burgess IV2017-06-131-1/+1
| | | | llvm-svn: 305262
* Adding one test that I forgot to include with the commit for ↵Wolfgang Pieb2017-06-132-0/+56
| | | | | | | | https://reviews.llvm.org/D32779. NFC llvm-svn: 305261
* Fix broken LLD test.Zachary Turner2017-06-131-0/+1
| | | | llvm-svn: 305260
* Revert "Revert "Fix alignment bug in COFF emission.""Eric Beckmann2017-06-131-46/+67
| | | | | | | | | | This revert was done so that my other patch to add test framework could land separately. Now the revert can be reverted and this patch can reland. This reverts commit 18b3c75b2b0d32601fb60a06b9672c33d6f0dff9. llvm-svn: 305259
* Update the test framework for llvm-cvtres to be more comprehensive.Eric Beckmann2017-06-1315-225/+748
| | | | | | | | | | Summary: Added test cases for multiple machine types, file merging, multiple languages, and more resource types. Also fixed new bugs these tests exposed. Subscribers: javed.absar, llvm-commits, hiraditya Differential Revision: https://reviews.llvm.org/D34047 llvm-svn: 305258
* Revert "Fix alignment bug in COFF emission."Eric Beckmann2017-06-1315-815/+271
| | | | | | | | | I accidentally combined this patch with one for adding more tests, they should be separated. This reverts commit 3da218a523be78df32e637d3446ecf97c9ea0465. llvm-svn: 305257
* Fix alignment bug in COFF emission.Eric Beckmann2017-06-1315-271/+815
| | | | | | | | | | | | Summary: Fix alignment issue in D34020, by aligning all sections to 8 bytes. Reviewers: zturner Subscribers: hiraditya, llvm-commits Differential Revision: https://reviews.llvm.org/D34072 llvm-svn: 305256
* [IR] Remove override of operator new from PHINode.Craig Topper2017-06-131-5/+0
| | | | | | | | This just forwarded to the same signature in User. The version in User is protected so there's no danger of anyone outside of PHINode constructing with the wrong operator new. All PHINodes are created by a static Create function in PHINode. I believe at one point in history this called User::operator new(s, 0) so it was useful then. llvm-svn: 305255
* Update LangRef for PR27284.Adrian Prantl2017-06-121-14/+14
| | | | | | And reverse the ownership between DICompileUnit and DISubprogram. llvm-svn: 305254
* [WebAssembly] MC: Fix value of R_WEBASSEMBLY_TABLE_INDEX relocationsSam Clegg2017-06-122-14/+68
| | | | | | | | | | | | | Previously we were writing the value function index space value but for these types of relocations we want to be writing the table element index space value. Add a test case for these relocation types that fails without this change. Differential Revision: https://reviews.llvm.org/D33962 llvm-svn: 305253
* Use a fixed target triple to s to appease windows botsAdrian Prantl2017-06-121-1/+1
| | | | llvm-svn: 305252
* [IR] Stop deleting other signatures of User::operator new when we override ↵Craig Topper2017-06-127-65/+0
| | | | | | | | | | | | | | | | | | one signature in a class derived from User User has 3 signatures for operator new today. They take a single size, a size and a number of users, and a size, number of users, and descriptor size. Historically there used to only be one signature that took size and a number of uses. Long ago derived classes implemented their own versions that took just a size and would call the size and use count version. Then they left an unimplemented signature for the size and use count signature from User. As we moved to C++11 this unimplemented signature because = delete. Since then operator new has picked up two new signatures for operator new. But when the 3 argument version was added it was never added to the delete list in all of the derived classes where the 2 argument version is deleted. This makes things inconsistent. I believe once one version of operator new is created in a derived class name hiding will take care of making all of the base class signatures unavailable. So I don't think the deleted lines are needed at all. This patch removes all of the deletes in cases where there is an override or there is already a delete of another signature (that should trigger name hiding too). Differential Revision: https://reviews.llvm.org/D34120 llvm-svn: 305251
* Also check section address in test.Rafael Espindola2017-06-121-0/+3
| | | | | | | This shows an oddity of this output. While the section address is 0, the the symbol address is computed as if the section was allocatable. llvm-svn: 305250
* Fix line endings.Zachary Turner2017-06-122-16/+16
| | | | llvm-svn: 305249
* [pdb] Don't choke on unknown symbol types.Zachary Turner2017-06-123-6/+64
| | | | | | | | | When we get an unknown symbol type, we might as well at least dump it. Same goes for round-tripping through YAML, we can dump the record contents as raw bytes even if we don't know how to interpret it semantically. llvm-svn: 305248
* Inliner: Don't remove calls to readnone+nounwind (but not always_inline) ↵David Blaikie2017-06-122-9/+21
| | | | | | functions in the AlwaysInliner llvm-svn: 305245
* Fix an assertion failure when duplicate dbg.declares are present.Adrian Prantl2017-06-122-0/+51
| | | | | | | | | | This fixes PR33157. https://bugs.llvm.org//show_bug.cgi?id=33157 We might also think about disallowing duplicate dbg.declare intrinsics entirely, but this may complicate some passes needlessly. llvm-svn: 305244
* fix typos/formatting; NFCSanjay Patel2017-06-123-9/+6
| | | | llvm-svn: 305243
* Support: Don't set RLIMIT_AS on child processes when applying a memory limitDavid Blaikie2017-06-121-10/+0
| | | | | | | | | | | | | | | | | | | | | | It doesn't seem relevant to set an address space limit - this isn't important in any sense that I'm aware & it gets in the way of things that use a lot of address space, like llvm-symbolizer. This came up when I realized that bugpoint regression tests were much slower with -gsplit-dwarf than plain -g. Turned out that bugpoint subprocesses (opt, etc) were crashing and doing symbolization - but bugpoint runs those subprocesses with a 400MB memory limit. So with plain -g, mmaping the opt binary would exceed the memory limit, fail, and thus be really fast - no symbolization occurred. Whereas with -gsplit-dwarf, comically, having less to map in, it would succeed and then spend lots of time symbolizing. I've fixed at least the critical part of bugpoint's perf problem there by adding an option to allow bugpoint to disable symbolization. Thus improving the perfromance for -gsplit-dwarf and making the -g-esque speed available without this quirk/accidental benefit. llvm-svn: 305242
* [ADT] Add type-safe methods to FoldingSetImpl; NFC.George Burgess IV2017-06-121-28/+42
| | | | | | | Thankfully, this hasn't uncovered any new bugs. With this, issues like the one fixed in r305207 (hopefully) shouldn't happen again. llvm-svn: 305241
* Fix printing error.Zachary Turner2017-06-121-1/+1
| | | | llvm-svn: 305240
* Revert r301742 which made ExprConstant checking apply to all full-exprs.Nick Lewycky2017-06-1216-41/+65
| | | | | | This patch also exposed pre-existing bugs in clang, see PR32864 and PR33140#c3 . llvm-svn: 305239
* [ODRHash] Add diagnostic messages for typedef and type alias.Richard Trieu2017-06-123-5/+154
| | | | llvm-svn: 305238
* [llvm-pdbutil] Fix one more issue with no-id-stream PDBs.Zachary Turner2017-06-121-13/+20
| | | | | | | | | | This one occurred when we were dumping symbols, we have code that is prepared to dump many different types of symbols, including symbols which reference an ID stream. So when creating the dumper object, we assume that there is an ID stream. Fix this assumption. llvm-svn: 305237
OpenPOWER on IntegriCloud