- Aug 31, 2020
-
-
Gongyu Deng authored
1. Added a dedicated completion to class `CommandObjectTypeFormatterDelete` which can be used by these commands: `type filter/format/summary/synthetic delete`; 2. Added a related test case. Reviewed By: teemperor Differential Revision: https://reviews.llvm.org/D84142
-
Alexandre Ganea authored
-
Raphael Isemann authored
-
Raphael Isemann authored
TestCompletion is randomly failing on some bots. The error message however states that the computed completions actually do contain the expected pid we're looking for, so there shouldn't be any test failure. The reason for that turns out to be that complete_from_to is actually used for testing two different features. It can be used for testing what the common prefix for the list of completions is and *also* for checking all the possible completions that are returned for a command. Which one of the two things should be checked can't be defined by a parameter to the function, but is instead guessed by the test method instead based on the results that were returned. If there is a common prefix in all completions, then that prefix is searched and otherwise all completions are searched. For TestCompletion's pid test this behaviour leads to the strange test failures. If all the pid's that our test LLDB can see have a common prefix (e.g., it can only see pids [123, 122, 10004, 10000] -> common prefix '1'), then complete_from_to check that the common prefix contains our pid, which is always fails ('1' doesn't contain '123' or any other valid pid). If there isn't a common prefix (e.g., pids are [123, 122, 10004, 777]) then complete_from_to will check the list of completions instead which works correctly. This patch is fixing this by adding a simple check method that doesn't have this behaviour and is simply searching the returned list of completions. This should get the bots green while I'm working on a proper fix that fixes complete_from_to. -
Georgii Rymar authored
Imagine we have an archive that has 3 objects in the following order: <valid known object>,<unknown object> and <valid known object>. Currently llvm-readelf/obj report an error and stops dumping in the middle. This patch changes the error reported to warning. Differential revision: https://reviews.llvm.org/D86771
-
Raphael Isemann authored
This reverts commit e9a3d1a4. Seems the new FileCheck library doesn't link on some bots. Reverting for now.
-
Raphael Isemann authored
The actual FileCheck logic seems to be implemented in LLVMSupport. I don't see a good reason for having FileCheck implemented there as it has a very specific use while LLVMSupport is a dependency of pretty much every LLVM tool there is. In fact, the only use of FileCheck I could find (outside the FileCheck tool and the FileCheck unit test) is a single call in GISelMITest.h. This moves the FileCheck logic to its own LLVMFileCheck library. This way only FileCheck and the GlobalISelTests now have a dependency on this code. Reviewed By: jhenderson Differential Revision: https://reviews.llvm.org/D86344
-
Raphael Isemann authored
Right now all tsan tests are crashing on Linux. The tests were already marked as expected failures, but since commit 20ce8aff added an assert that every StopInfo needs a non-empty stop description the tests actually started crash (which is even with an expectedFailure a failed test). The reason for that is that we never had any stop description when hitting tsan errors on Linux. Before the assert that just made the test fail, but now the empty description is hitting the assert. This patch just adds a generic stop description mentioning tsan to prevent that we hit that assert on platforms where we don't support extracting the tsan report. Reviewed By: friss Differential Revision: https://reviews.llvm.org/D86593
-
Xing GUO authored
The Length, AbbrOffset and Values fields of the debug_info section are optional. This patch helps remove them and simplify test cases. Reviewed By: MaskRay Differential Revision: https://reviews.llvm.org/D86857
-
Fangrui Song authored
For an instruction in the basic block BB, SinkingPass enumerates basic blocks dominated by BB and BB's successors. For each enumerated basic block, SinkingPass uses `AllUsesDominatedByBlock` to check whether the basic block dominates all of the instruction's users. This is inefficient. Use the nearest common dominator of all users to avoid enumerating the candidate. The nearest common dominator may be in a parent loop which is not beneficial. In that case, find the ancestors in the dominator tree. In the case that the instruction has no user, with this change we will not perform unnecessary move. This causes some amdgpu test changes. A stage-2 x86-64 clang is a byte identical with this change.
-
Fangrui Song authored
-
Venkataramanan Kumar authored
-
Sanjay Patel authored
This is a reduced version of a test-suite crasher with rG25597f77
-
Sanjay Patel authored
This reverts commit 25597f77. It is causing crashing on bots such as: http://lab.llvm.org:8011/builders/fuchsia-x86_64-linux/builds/10523/steps/ninja-build/logs/stdio
-
Florian Hahn authored
Similar to other checks above, if there is no write location for a def, it cannot be considered for elimination and can be skipped.
-
Sanjay Patel authored
As discussed in D86798 / rG09652721 , we were potentially returning a different result for whether an Instruction is commutable depending on if we call the base class or derived class method. This requires relaxing an assert in GVN, but that pass seems to be working otherwise. NewGVN requires more work because it uses different code paths for numbering binops and calls.
-
Sanjay Patel authored
-
Sanjay Patel authored
-
Florian Hahn authored
After recent changes, we return early if Current is a MemoryPhi, so EarlierAccess can only be a MemoryDef.
-
Craig Topper authored
The conditions in these tests are guaranteed to always go one direction. InstCombine would have folded them away.
-
Florian Hahn authored
Precommit test for D86849.
-
Thomas Preud'homme authored
Add printf-style precision specifier to pad numbers to a given number of digits when matching them if the value is smaller than the given precision. This works on both empty numeric expression (e.g. variable definition from input) and when matching a numeric expression. The syntax is as follows: [[#%.<precision><format specifier>, ...] where <format specifier> is optional and ... can be a variable definition or not with an empty expression or not. In the absence of a precision specifier, a variable definition will accept leading zeros. Reviewed By: jhenderson, grimar Differential Revision: https://reviews.llvm.org/D81667
-
Mehdi Amini authored
Full diagnostic was: warning: base class ‘class mlir::OptReductionBase<mlir::OptReductionPass>’ should be explicitly initialized in the copy constructor [-Wextra]
-
Florian Hahn authored
addRuntimeChecks uses SCEVExpander, which relies on the DT/LoopInfo to be up-to-date. Changing the CFG afterwards may invalidate some inserted instructions, especially LCSSA phis. Reorder the code to first update the CFG and then create the runtime checks. This should not have any impact on the generated code, as we adjust the CFG and generate runtime checks together. Fixes PR47343.
-
Michael Park authored
A parameter pack is deemed to be uncaptured, which is bogus... but it seems to be because it's within an expression that involves `decltype` of an uncaptured pack or something: https://godbolt.org/z/b8z3sh Drive-by fix for uglified name. Differential Revision: https://reviews.llvm.org/D86827
-
- Aug 30, 2020
-
-
Sanjay Patel authored
This requires adding a missing 'const' to the definition because the callers are using const args, but there should be no change in behavior. The intrinsic method was added with D86798 / rG09652721
-
Sanjay Patel authored
In general, we probably want to try the multi-use reciprocal transform before sqrt transforms, but x/sqrt(x) is a special-case because that will always reduce to plain sqrt(x) or an estimate. The AArch64 tests show that the transform is limited by TLI hook to patterns where there are 3 or more uses of the divisor. So this change can result in an extra division compared to what we had, but that's the intended behvior based on the current setting of that hook.
-
Sanjay Patel authored
-
Sanjay Patel authored
-
Sanjay Patel authored
As discussed in D86798, it's not clear if the caller code works with a more liberal definition of "commutative" that includes intrinsics like min/max. This makes the binop restriction (current functionality is unchanged) explicit until the code is audited/tested.
-
Nikita Popov authored
-
Anatoly Trosinenko authored
Reviewed By: MaskRay Differential Revision: https://reviews.llvm.org/D86400
-
Krzysztof Parzyszek authored
Perfect shuffle instruction (vdealvdd/vshuffvdd) work on vector pairs. When given a single input vector, half of it first needs to be transposed into the other vector before the generated shuffles can take effect. Also the first transpose needs to be undone at the end (this last step was missing).
-
David Green authored
-
Tyker authored
althought the interstingness test should usually fail when the module is invalid this changes reduces the frequency at which llvm-reduce generate invalid IR. Reviewed By: lebedev.ri Differential Revision: https://reviews.llvm.org/D86404
-
sstefan1 authored
The problem with module slice has been addressed in D86319 Introduce two new AAs. AAICVTrackerFunctionReturned which checks if a function can have a unique ICV value after it is finished, and AAICVCallSiteReturned which checks AAICVTrackerFunctionReturned for a call site. This enables us to check the value of a call and if it changes the ICV. This also changes the approach in `getReplacementValues()` to a worklist-based approach so we can explore all relevant BBs. Differential Revision: https://reviews.llvm.org/D85544
-
sstefan1 authored
Summary: The module slice describes which functions we can analyze and transform while working on an SCC as part of the Attributor-CGSCC pass. So far we simply restricted it to the SCC. Reviewers: jdoerfert Differential Revision: https://reviews.llvm.org/D86319
-
Kamlesh Kumar authored
Differential Revision: https://reviews.llvm.org/D86848
-
sstefan1 authored
-
Juneyoung Lee authored
-