- Jul 16, 2020
-
-
Frederik Gossen authored
Update line wrapping. Differential Revision: https://reviews.llvm.org/D83769
-
Qiu Chaofan authored
4c5a93bd landed adjustment to handle C++20 no_unique_address attribute correctly, clang treats empty members in aggregate type differently if having this attribute. This commit adds necessary test for PowerPC target to reflect this change.
-
Cameron McInally authored
The operands of a BUILD_VECTOR must all have the same type, so we can hoist this invariant condition out of the loop. Differential Revision: https://reviews.llvm.org/D83882
-
- Jul 15, 2020
-
-
Jonas Devlieghere authored
Remove the forkSubprocess method and its bookkeeping. TestCreateAfterAttach is the only test using the fork method and I'm not convinced it adds enough to warrant the maintenance. Pavel suggested the same thing in D83815.
-
Joachim Protze authored
This reverts commit 00e3a1dd. The commit broke most build bots, investigating.
-
Frederik Gossen authored
The use of the `scf.for` callback builder does not allow for a rollback of the emitted conversions. Instead, we populate the loop body through the conversion rewriter directly. Differential Revision: https://reviews.llvm.org/D83873
-
David Green authored
This missed being part of 9e03547c.
-
Joel E. Denny authored
-
Joachim Protze authored
This patch splits the handling of racy address and racy stack into separate functions. If a race was already reported for the address, we can avoid the cost for collecting the involved stacks. This patch also removes the race condition in storing the racy address / racy stack. This race condition allowed all threads to report the race. This patch changes the transitive suppression of reports. Previously suppression could transitively chain memory location and racy stacks. Now racy memory and racy stack are separate suppressions. Reviewed by: dvyukov Differential Revision: https://reviews.llvm.org/D83625
-
Raphael Isemann authored
This reverts commit 29aab9b5. It seems on Windows the file name is just always "lldbsuite.test.lldbtest" for all tests and that breaks pretty much everything. Reverting until we have a better solution.
-
Tim Northover authored
CodeGenPrepare keeps fairly close track of various instructions it's seen, particularly GEPs, in maps and vectors. However, sometimes those instructions become dead and get removed while it's still executing. This triggers AssertingVH references to them in an asserts build and could lead to miscompiles in a release build (I've only seen a later segfault though). So this patch adds a callback to RecursivelyDeleteTriviallyDeadInstructions which can make sure the instruction about to be deleted is removed from CodeGenPrepare's data structures.
-
Pavel Labath authored
It's possible to achieve the same effect by providing multi-step recipe instead of a single-step recipe where the step happens to contain multiple commands.
-
Pavel Labath authored
It served a puprose while we were using the test name to provide a name for the created file. Now that the files are created in memory, we don't need that.
-
Kirill Bobyrev authored
Summary: errs() is more appropriate for error messages in dexp and clangd-index-server. Reviewers: sammccall Reviewed By: sammccall Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, usaxena95, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D83827
-
Raphael Isemann authored
Summary: Currently expect_expr will not run the expression if no target is selected. This patch changes this behavior so that expect_expr will instead fall back to the dummy target similar to what the `expression` command is doing. This way we don't have to compile an empty executable to be able to use `expect_expr` (which is a waste of resources for tests that just test generic type system features). As a test I modernized the TestTypeOfDeclTypeExpr into a Python test + expect_expr (as it relied on the dummy target fallback of the expression command). Reviewers: labath, JDevlieghere Reviewed By: labath Subscribers: abidh Differential Revision: https://reviews.llvm.org/D83388
-
Raphael Isemann authored
Summary: From what I know we already have the restriction that every test in the test suite needs to have a unique file name as that's used for generating the unique build directory for a test. It seems there is also a restriction that every test case class in the test suite needs to have a unique name as that's used to generate the unique log file name for the test run. This changes the log file format to use the basename of the test file instead so that we only have to keep worrying about the 'unique file name' restriction from now on. This came up because I started naming the test classes "TestCase" (as repeating the file name in the test class seems like redudant information that just makes renaming tests a pain). Reviewers: labath, JDevlieghere Reviewed By: labath Subscribers: mgorny, abidh Differential Revision: https://reviews.llvm.org/D83767
-
YunQiang Su authored
`FeatureMadd4` is used to disable `madd4`, and the corresponding feature option is `(+-)nomadd4`. Renaming to the `FeatureNoMadd4` makes its purpose clear. Patch by YunQiang Su. Differential Revision: https://reviews.llvm.org/D83780
-
lewis-revill authored
This patch provides optimization of bit manipulation operations by enabling the +experimental-b target feature. It adds matching of single block patterns of instructions to specific bit-manip instructions from the ternary subset (zbt subextension) of the experimental B extension of RISC-V. It adds also the correspondent codegen tests. This patch is based on Claire Wolf's proposal for the bit manipulation extension of RISCV: https://github.com/riscv/riscv-bitmanip/blob/master/bitmanip-0.92.pdf Differential Revision: https://reviews.llvm.org/D79875
-
lewis-revill authored
This patch provides optimization of bit manipulation operations by enabling the +experimental-b target feature. It adds matching of single block patterns of instructions to specific bit-manip instructions from the single-bit subset (zbs subextension) of the experimental B extension of RISC-V. It adds also the correspondent codegen tests. This patch is based on Claire Wolf's proposal for the bit manipulation extension of RISCV: https://github.com/riscv/riscv-bitmanip/blob/master/bitmanip-0.92.pdf Differential Revision: https://reviews.llvm.org/D79874
-
lewis-revill authored
This patch provides optimization of bit manipulation operations by enabling the +experimental-b target feature. It adds matching of single block patterns of instructions to specific bit-manip instructions belonging to both the permutation and the base subsets of the experimental B extension of RISC-V. It adds also the correspondent codegen tests. This patch is based on Claire Wolf's proposal for the bit manipulation extension of RISCV: https://github.com/riscv/riscv-bitmanip/blob/master/bitmanip-0.92.pdf Differential Revision: https://reviews.llvm.org/D79873
-
lewis-revill authored
This patch provides optimization of bit manipulation operations by enabling the +experimental-b target feature. It adds matching of single block patterns of instructions to specific bit-manip instructions from the permutation subset (zbp subextension) of the experimental B extension of RISC-V. It adds also the correspondent codegen tests. This patch is based on Claire Wolf's proposal for the bit manipulation extension of RISCV: https://github.com/riscv/riscv-bitmanip/blob/master/bitmanip-0.92.pdf Differential Revision: https://reviews.llvm.org/D79871
-
lewis-revill authored
This patch provides optimization of bit manipulation operations by enabling the +experimental-b target feature. It adds matching of single block patterns of instructions to specific bit-manip instructions from the base subset (zbb subextension) of the experimental B extension of RISC-V. It adds also the correspondent codegen tests. This patch is based on Claire Wolf's proposal for the bit manipulation extension of RISCV: https://github.com/riscv/riscv-bitmanip/blob/master/bitmanip-0.92.pdf Differential Revision: https://reviews.llvm.org/D79870
-
John Brawn authored
This fixes an instance where MemorySSA-using Dead Store Elimination is failing to do a transformation that the non-MemorySSA-using version does. Differential Revision: https://reviews.llvm.org/D83783
-
Florian Hahn authored
The actual rotation happens in processLoop, so the second removed call to verifyMemorySSA was unnecessary. In fact, processLoop/rotateLoop already verify MemorySSA before and after transforming each loop. Hence, both calls can be removed. Pointed out by @lebedev.ri post-commit D51718.
-
Frederik Gossen authored
Add `shape.shape_eq` operation to the shape dialect. The operation allows to test shapes and extent tensors for equality. Differential Revision: https://reviews.llvm.org/D82528
-
Sam McCall authored
Summary: I hit this while trying to add a config-over-LSP lit test, which I think is an appropriate way to test this feature. That needs a few more changes though... Reviewers: kadircet Subscribers: ilya-biryukov, javed.absar, MaskRay, jkorous, arphaman, usaxena95, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D83802
-
Balázs Kéri authored
Summary: Two CSA bug reports where only the uniqueing location is different should be treated as different problems. The role of uniqueing location is to differentiate bug reports. Reviewers: Szelethus, baloghadamsoftware, NoQ, vsavchenko, xazax.hun, martong Reviewed By: NoQ Subscribers: NoQ, rnkovacs, xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, gamesh411, Charusso, martong, ASDenysPetrov, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D83115
-
Hans Wennborg authored
and clear the release notes.
-
Georgii Rymar authored
Names of YAML keys changed in rG7a587ca9
-
Jessica Clarke authored
Follow-on from D77443. Although we're not fixing any of these pseudo-instructions, the potential for them to be out of sync still exists.
-
Jessica Clarke authored
Summary: Without these, the generic branch relaxation pass will underestimate the range required for branches spanning these and we can end up with "fixup value out of range" errors rather than relaxing the branches. Some of the instructions in the expansion may end up being compressed but exactly determining that is awkward, and these conservative values should be safe, if slightly suboptimal in rare cases. Reviewers: asb, lenary, luismarques, lewis-revill Reviewed By: asb, luismarques Subscribers: hiraditya, rbar, johnrusso, simoncook, sabuasal, niosHD, kito-cheng, shiva0217, MaskRay, zzheng, edward-jones, rogfer01, MartinMosbeck, brucehoult, the_o, rkruppe, jfb, PkmX, jocewei, psnobl, benna, Jim, s.egerton, pzheng, sameer.abuasal, apazos, evandro, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D77443
-
Georgii Rymar authored
In D83482 we agreed to name e_* fields that are used for overriding values (like e_phoff) as EPh* (e.g. EPhOff). Currently we have a set of e_sh* fields that are named inconsistently with this rule. This patch renames all of them. Differential revision: https://reviews.llvm.org/D83766
-
Florian Hahn authored
In 2b3c505d, the pointer arguments for the matrix load and store intrinsics was changed to always be the element type of the vector argument. This patch updates the MatrixBuilder to not add the pointer type to the overloaded types and adjusts the clang/mlir tests. This should fix a few build failures on GreenDragon, including http://green.lab.llvm.org/green/job/test-suite-verify-machineinstrs-x86_64-O0-g/7891/
-
Georgii Rymar authored
This improves condition in the ELFFile::program_headers(). Previously if was possible to read the headers from the wrong place when the value of e_phoff was so large that computation overflowed. Differential revision: https://reviews.llvm.org/D83774
-
Andrew Ng authored
Fix incorrect use of the size of Path when accessing PathUTF16, as the UTF-16 path can be shorter. Added unit test for coverage of this test case. Thanks to Ding Fei (danix800) for the code fix, see https://reviews.llvm.org/D83321. Differential Revision: https://reviews.llvm.org/D83689
-
Sam McCall authored
-
Tim Northover authored
-
Tim Northover authored
Some of the system registers readable on AArch64 and ARM platforms return different values with each read (for example a timer counter), these shouldn't be hoisted outside loops or otherwise interfered with, but the normal @llvm.read_register intrinsic is only considered to read memory. This introduces a separate @llvm.read_volatile_register intrinsic and maps all system-registers on ARM platforms to use it for the __builtin_arm_rsr calls. Registers declared with asm("r9") or similar are unaffected. -
David Spickett authored
Summary: Failure type 1: This test can fail when the path of the build includes the strings we're checking for. E.g "/gcc" is found in ".../gcc_7.3.0/..." To correct this look for '"' on the end of all matches. So that we only match the end of paths printed by clang -###. (which would be ".../gcc_7.3.0/.../gcc" for the example) Also look for other gcc names like gcc-x.y.z in the first check. This confirms that the copy of clang we made is isolated as expected. Failure type 2: If you use a triple like "powerpc64le-linux-gnu" clang actually reports "powerpc64le-unknown-linux-gnu". Then it searches for the former. That combined with Mac OS adding a version number to cmake's triple means we can't trust cmake or clang to give us the one default triple. To fix the test, write to both names. As they don't overlap with our fake triple, we're still showing that the lookup works. Reviewers: MaskRay, stevewan Reviewed By: stevewan Subscribers: miyuki, JDevlieghere, steven.zhang, stevewan, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D83055
-