- Feb 21, 2019
-
-
Evgeniy Stepanov authored
Reviewers: pcc, thakis Subscribers: llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D58483 llvm-svn: 354618
-
Michal Gorny authored
Fix the load_* using test Makefiles not to link -ldl on NetBSD. There is no such a library on NetBSD, and dlopen() is available without a library. Quoting the manpage: (These functions are not in a library. They are included in every dynamically linked program automatically.) To resolve this portably, introduce a new USE_LIBDL option. If it set to 1, Makefile.rules automatically appends -ldl on platforms needing it. Differential Revision: https://reviews.llvm.org/D58517 llvm-svn: 354617
-
Amara Emerson authored
Thanks to Richard Trieu for pointing out that the failures were due to a use-after-free of an ArrayRef. llvm-svn: 354616
-
Yaxun Liu authored
Add .stub to kernel stub function name so that it is different from kernel name in device code. This is necessary to let debugger find correct symbol for kernel Differential Revision: https://reviews.llvm.org/D58518 llvm-svn: 354615
-
Mandeep Singh Grang authored
llvm-svn: 354614
-
Alina Sbirlea authored
Summary: MemorySSA is not properly updated in LoopSimplifyCFG after recent changes. Use SplitBlock utility to resolve that and clear all updates once handleDeadExits is finished. All updates that follow are removal of edges which are safe to handle via the removeEdge() API. Also, deleting dead blocks is done correctly as is, i.e. delete from MemorySSA before updating the CFG and DT. Reviewers: mkazantsev, rtereshin Subscribers: sanjoy, jlebar, Prazek, george.burgess.iv, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D58524 llvm-svn: 354613
-
Alina Sbirlea authored
Summary: Cleanup nop assignments. Reviewers: george.burgess.iv, davide Subscribers: sanjoy, jlebar, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D58308 llvm-svn: 354612
-
Krzysztof Parzyszek authored
The trap instruction is intercepted by various runtime environments, and instead of a crash it creates confusion. This reapplies r354606 with a fix. llvm-svn: 354611
-
Michael Liao authored
Summary: - If a string literal is reused directly, need to add necessary address space casting if the target requires that. Reviewers: yaxunl Subscribers: jvesely, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D58509 llvm-svn: 354610
-
Krzysztof Parzyszek authored
llvm-svn: 354609
-
Mandeep Singh Grang authored
llvm-svn: 354608
-
Peter Collingbourne authored
RelocationBaseSection is not used in -r links, so Config->Relocatable will always be false. Differential Revision: https://reviews.llvm.org/D58489 llvm-svn: 354607
-
Krzysztof Parzyszek authored
The trap instruction is intercepted by various runtime environments, and instead of a crash it creates confusion. llvm-svn: 354606
-
Rui Ueyama authored
This patch basically does the same thing as https://reviews.llvm.org/rL352729 did to clang. With this patch, lld now prints out a correct version string including a git commit id like this: $ bin/ld.lld --version LLD 9.0.0 (https://github.com/llvm/llvm-project.git c027658504fa9e68173f53dedaf223695a65e910) (compatible with GNU linkers) Fixes https://bugs.llvm.org/show_bug.cgi?id=40780 Differential Revision: https://reviews.llvm.org/D58411 llvm-svn: 354605
-
Mark Searles authored
An internal build is hitting asserts complaining about too many subtarget features: llvm/utils/TableGen/Types.cpp:42: const char* llvm::getMinimalTypeForEnumBitfield(uint64_t): Assertion `MaxIndex <= 64 && "Too many bits"' failed. llvm/utils/TableGen/AsmMatcherEmitter.cpp:1476: void {anonymous}::AsmMatcherInfo::buildInfo(): Assertion `SubtargetFeatures.size() <= 64 && "Too many subtarget features!"' failed. The short-term solution is to remove a few unused AssemblerPredicates to get under the limit. The long-term solution seems to be to revisit these asserts. E.g., rather than hardcoded '64', use the standard sized std::bitset like the other places that track subtarget features. Differential Revision: https://reviews.llvm.org/D58516 llvm-svn: 354604
-
Jordan Rupprecht authored
llvm-svn: 354603
-
Jonas Devlieghere authored
error: default initialization of an object of const type 'const Pod' without a user-provided default constructor llvm-svn: 354602
-
Matt Morehouse authored
This reverts r354451 since it broke the Windows sanitizer bot. llvm-svn: 354601
-
Jordan Rupprecht authored
Summary: This removes calls to `error()`/`reportError()` in the main driver (llvm-objcopy.cpp) as well as the associated argv-parsing (CopyConfig.cpp). `logAllUnhandledErrors()` is now the main way to print errors. There are still a few uses from within the per-arch drivers, so we can't delete them yet... but almost! Reviewers: jhenderson, alexshap, espindola Reviewed By: jhenderson Subscribers: emaste, arichardson, jakehehrlich, jdoerfert, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D58316 llvm-svn: 354600
-
Sam Clegg authored
`__linear_memory` and `__indirect_function_table` are both generated as imports in wasm object files but are actually symbols and don't appear in any symbols table or relocation entry. Indeed we don't have any symbol type to meaningfully represent either of them. Differential Revision: https://reviews.llvm.org/D58487 llvm-svn: 354599
-
Lang Hames authored
This should allow more recent definitions of functions in the Kaleidoscope REPL to override old ones, as the tutorial text promises. llvm-svn: 354598
-
Jordan Rupprecht authored
Summary: Removing a large number of sections from a file with a lot of symbols can have abysmal (i.e. O(n^2)) performance, e.g. when running `--only-section` to extract one section out of a large file. This comes from iterating over all symbols in the symbol table each time we remove a section, to remove references to the section we just removed. Instead, do just one pass of symbol removal by passing a hash set of all the sections we'd like to remove references to. This fixes a regression when running llvm-objcopy -j <one section> on an object file with many sections and symbols -- on my machine, running `objcopy -j .keep_me huge-input.o /tmp/foo.o` takes .3s with GNU objcopy, 1.3s with an updated llvm-objcopy, and 7+ minutes with llvm-objcopy prior to this patch. Reviewers: MaskRay, jhenderson, jakehehrlich, alexshap, espindola Reviewed By: MaskRay, jhenderson Subscribers: echristo, emaste, arichardson, mgrang, jdoerfert, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D58296 llvm-svn: 354597
-
Alexey Bataev authored
This reverts commit r354593 to fix the problem with the crash on windows. llvm-svn: 354596
-
Nirav Dave authored
llvm-svn: 354595
-
Sanjay Patel authored
This fold can occur during legalization, so it can fight with promotion to the larger type. It apparently takes a special sequence and subtarget to avoid more basic simplifications that would hide the problem. But there's a bigger question raised here: why does distributeTruncateThroughAnd() even exist? It duplicates functionality from a more minimal pattern that we already have. But getting rid of this function requires some preliminary steps. https://bugs.llvm.org/show_bug.cgi?id=40793 llvm-svn: 354594
-
Alexey Bataev authored
Summary: Adapted targetDiag for the CUDA and used for the delayed diagnostics in asm constructs. Works for both host and device compilation sides. Reviewers: tra, jlebar Subscribers: jdoerfert, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D58463 llvm-svn: 354593
-
Matt Arsenault authored
llvm-svn: 354592
-
Matt Arsenault authored
For AMDGPU, if an operand requires an SGPR but is only available as a VGPR, a loop needs to be introduced to execute the instruction with each unique combination of values across all lanes. The rest of the instructions in the block will be moved to a new block following the loop. Check if the next instruction's parent changed, and update the iterators and insertion block if this happened. Tests will be included in a future patch. llvm-svn: 354591
-
Matt Arsenault authored
llvm-svn: 354590
-
Sanjay Patel authored
llvm-svn: 354589
-
Nirav Dave authored
@ccz operand should be equivalent to @cce. llvm-svn: 354588
-
Matt Arsenault authored
llvm-svn: 354587
-
Ilya Biryukov authored
The check includes a substring, configurable by PACKAGE_NAME in CMake. This leads to failures if PACKAGE_NAME is not the default. llvm-svn: 354586
-
Kadir Cetinkaya authored
Summary: Clangd was reporting implicit symbols, like results of implicit cast expressions during code navigation, which is not desired. For example: ``` struct Foo{ Foo(int); }; void bar(Foo); vod foo() { int x; bar(^x); } ``` Performing a GoTo on the point specified by ^ would give two results one pointing to line `int x` and the other for definition of `Foo(int);` Reviewers: ilya-biryukov, sammccall Subscribers: ioeric, MaskRay, jkorous, mgrang, arphaman, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D58495 llvm-svn: 354585
-
Alex Bradbury authored
Also clang-format the modified hunks. llvm-svn: 354584
-
Alex Bradbury authored
Allow load/store instructions with implied zero offset for compatibility with GNU assembler. Differential Revision: https://reviews.llvm.org/D57141 Patch by James Clarke. llvm-svn: 354581
-
Joey Gouly authored
llvm-svn: 354580
-
Diana Picus authored
Same as arm mode. llvm-svn: 354579
-
Clement Courbet authored
This part introduces the lifetime node. llvm-svn: 354578
-
James Henderson authored
The existing ELF symbol and section table testing doesn't test many of the corner-cases or valid values for various ELF properties, including things like binding, visibility, section type and so on. This patch adds a series of tests that test these and other related edge-cases. Reviewed by: grimar, MaskRay Differential Revision: https://reviews.llvm.org/D58457 llvm-svn: 354577
-