- Sep 30, 2020
-
-
Simon Pilgrim authored
Appease update_test_checks script that was complaining about potential %TMP clashes
-
Matt Arsenault authored
-
Matt Arsenault authored
-
Matt Arsenault authored
This allows LiveDebugValues to insert the proper DBG_VALUEs in live out blocks if a spill is inserted before the use of a register. Previously, this would see the register use as the last DBG_VALUE, even though the stack slot should be treated as the live out value. This avoids an lldb test regression when D52010 is re-applied.
-
Matt Arsenault authored
This reverts commit 73a6a164.
-
Xiangling Liao authored
On some targets like AIX, last bitfield size is not always equal to last bitfield type size. Some bitfield like bool will have the same alignment as [unsigned]. So we'd like to use a more general term `StorageUnit` to replace type in this field. Differential Revision: https://reviews.llvm.org/D88260
-
Rainer Orth authored
`TestCases/log-path_test.cpp` currently `FAIL`s on Solaris: $ env ASAN_OPTIONS=log_path=`for((i=0;i<10000;i++)); do echo -n $i; done` ./log-path_test.cpp.tmp ==5031==ERROR: Path is too long: 01234567... Segmentation Fault (core dumped) The `SEGV` happens here: Thread 2 received signal SIGSEGV, Segmentation fault. [Switching to Thread 1 (LWP 1)] 0x00000000 in ?? () (gdb) where #0 0x00000000 in ?? () #1 0x080a1e63 in __interceptor__exit (status=1) at /vol/gcc/src/llvm/llvm/local/projects/compiler-rt/lib/asan/../sanitizer_common/sanitizer_common_interceptors.inc:3808 #2 0x08135ea8 in __sanitizer::internal__exit (exitcode=1) at /vol/gcc/src/llvm/llvm/local/projects/compiler-rt/lib/sanitizer_common/sanitizer_solaris.cc:139 when `__interceptor__exit` tries to call `__interception::real__exit` which is `NULL` at this point because the interceptors haven't been initialized yet. Ultimately, the problem lies elsewhere, however: `internal__exit` in `sanitizer_solaris.cpp` calls `_exit` itself since there doesn't exit a non-intercepted version in `libc`. Using the `syscall` interface instead isn't usually an option on Solaris because that interface isn't stable. However, in the case of `SYS_exit` it can be used nonetheless: `SYS_exit` has remained unchanged since at least Solaris 2.5.1 in 1996, and this is what this patch does. Tested on `amd64-pc-solaris2.11`. Differential Revision: https://reviews.llvm.org/D88404
-
Benjamin Kramer authored
AffineMapAttr is already part of base, it's just impossible to refer to it from ODS without pulling in the definition from Affine dialect. Differential Revision: https://reviews.llvm.org/D88555
-
Gabriel Hjort Åkerlund authored
Before, for each original argument i, ValNo was set to i + PartIdx, but ValNo is intended to reflect the index of the value before splitting. Hence, ValNo should always be set to i and not consider the PartIdx. Reviewed By: arsenm Differential Revision: https://reviews.llvm.org/D86511
-
Sean Fertile authored
After removal of Darwin as a PowerPC subtarget, the VRSAVE save/restore/spill/update code is no longer needed by any supported subtarget, so remove it while keeping support for vrsave and related instruction aliases for inline asm. I've pre-commited tests to document the existing vrsave handling in relation to @llvm.eh.unwind.init and inline asm usage, as well as a test which shows a beahviour change on AIX related to returning vector type as we were wrongly emiting VRSAVE_UPDATE on AIX.
-
Sam McCall authored
Differential Revision: https://reviews.llvm.org/D88567
-
Simon Pilgrim authored
There doesn't seem to be any good reason for having a separate path for when we bswap/bitreverse at a smaller size than the destination size - so merge these to make the instruction generation a lot clearer.
-
Simon Pilgrim authored
Appease update_test_checks script that was complaining about potential %TMP clashes
-
Simon Pilgrim authored
-
Michał Górny authored
-
Florian Hahn authored
Now that VPUser is not inheriting from VPValue, we can take the next step and turn the recipes that already manage their operands via VPUser into VPUsers directly. This is another small step towards traversing def-use chains in VPlan. This is NFC with respect to the generated code, but makes the interface more powerful.
-
Ed Maste authored
Add a missing include and some definitions in 76953321. Patch by: Brooks Davis Reviewed by: labath Differential Revision: https://reviews.llvm.org/D88453
-
Simon Pilgrim authored
-
Simon Pilgrim authored
Early out if both pattern matches have failed (or we don't want them). Fix case of bit index iterator (and avoid Wshadow issue).
-
Sam Parker authored
We weren't looking at global uses of a value, so we could happily overwrite the register incorrectly. Differential Revision: https://reviews.llvm.org/D88554
-
Simon Pilgrim authored
Post-commit feedback on D88316
-
Simon Pilgrim authored
Fix a number of WShadow warnings (I was used as the instruction and index......) and fix cases to match style. Also, replaced the Bit APInt mask check in AND instructions with a direct APInt[] bit check.
-
Florian Hahn authored
This check helps to guard against cases where expressions referring to invalidated/deleted loops are not properly invalidated. The additional check is motivated by the reproducer shared for 8fdac7cb and I think in general make sense as a sanity check. Reviewed By: reames Differential Revision: https://reviews.llvm.org/D88166
-
Jakub Lichman authored
Current setup for conv op vectorization does not enable user to specify tile sizes as well as dimensions for vectorization. In this commit we change that by adding tile sizes as pass arguments. Every dimension with corresponding tile size > 1 is automatically vectorized. Differential Revision: https://reviews.llvm.org/D88533
-
Sam Parker authored
-
Jakub Lichman authored
This commit adds support for subviews which enable to reduce resulting rank by dropping static dimensions of size 1. Differential Revision: https://reviews.llvm.org/D88534
-
Simon Pilgrim authored
PR39793 demonstrated an issue where we fail to recognize 'partial' bswap patterns of the lower bytes of an integer source. In fact, most of this is already in place collectBitParts suitably tags zero bits, so we just need to correctly handle this case by finding the zero'd upper bits and reducing the bswap pattern just to the active demanded bits. Differential Revision: https://reviews.llvm.org/D88316
-
Simon Pilgrim authored
As suggested by @spatel on D88316
-
LLVM GN Syncbot authored
-
Xiang1 Zhang authored
Key Locker provides a mechanism to encrypt and decrypt data with an AES key without having access to the raw key value by converting AES keys into “handles”. These handles can be used to perform the same encryption and decryption operations as the original AES keys, but they only work on the current system and only until they are revoked. If software revokes Key Locker handles (e.g., on a reboot), then any previous handles can no longer be used. Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D88398
-
George Mitenkov authored
Added support for different function control in serialization and deserialization. Reviewed By: mravishankar Differential Revision: https://reviews.llvm.org/D88280
-
Jonas Paulsson authored
Add support of "nop" and "nopr" (without operands) to assembler. Review: Ulrich Weigand
-
Jay Foad authored
Following on from D87757 "[SplitKit] Only copy live lanes", it is possible to split a live range at a point when none of its subranges are live. This patch handles that case by inserting an implicit def of the superreg. Patch by Quentin Colombet! Differential Revision: https://reviews.llvm.org/D88397
-
Mirko Brkusanin authored
Check if operand of mul is constant value of one for certain atomic instructions in order to avoid making unnecessary instructions when -amdgpu-atomic-optimizer is present. Differential Revision: https://reviews.llvm.org/D88315
-
Kadir Cetinkaya authored
Relative paths received from the server are always in posix style. So we need to ensure they are relative using that style, and not the native one. Differential Revision: https://reviews.llvm.org/D88507
-
Sam McCall authored
-
Sam McCall authored
-
Jeremy Morse authored
Some of the buildbots have croaked with this patch, for examples failures that begin in this build: http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux/builds/29933 This reverts commit 674f5787.
-
Georgii Rymar authored
This removes 4 input files (one source file and 3 precompiled binaries) from `mips-got.test` (now YAMLs are used instead) and also makes the testing of the GNU output a bit stricter (`--strict-whitespace --match-full-lines`). Differential revision: https://reviews.llvm.org/D88488
-
Georgii Rymar authored
[llvm-readobj][ARM] - Improve support of printing unwind (-u) information for non-relocatable objects. This is the one more patch for https://bugs.llvm.org/show_bug.cgi?id=47581 It fixes how we print an information for the Generic model. With this patch we are able to read values from `.ARM.extab` and dump proper personality routines names/addresses. Differential revision: https://reviews.llvm.org/D88478
-