- Feb 27, 2020
-
-
Raphael Isemann authored
Currently we only show the user that the expression failed but not what is actually wrong with it. This just dumps the error we get back alongside the other output to the error stream. This should also help with finding out with why sometimees the TestWatchLocationWithWatchSet.py test fails here on the LLDB incremental bot on Green Dragon.
-
Kirill Bobyrev authored
This reverts commit 7691790d. The patch is failing tests with MSAN: http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fast/builds/39054/steps/check-llvm%20msan/logs/stdio
-
Djordje Todorovic authored
This fixes a build failure with an ARM buildbot. Differential Revision: https://reviews.llvm.org/D75231
-
David Stenberg authored
Summary: If the describeLoadedValue() hook produced a DIExpression when describing a instruction, and it was not possible to emit a call site entry directly (the value operand was not an immediate nor a preserved register), then that described value could not be inserted into the worklist, and would instead be dropped, meaning that the parameter's call site value couldn't be described. This patch extends the worklist so that each entry has an DIExpression that is built up when iterating through the instructions. This allows us to describe instruction chains like this: $reg0 = mv $fp $reg0 = add $reg0, offset call @call_with_offseted_fp Since DW_OP_LLVM_entry_value operations can't be combined with any other expression, such call site entries will not be emitted. I have added a test, dbgcall-site-expr-entry-value.mir, which verifies that we don't assert or emit broken DWARF in such cases. Reviewers: djtodoro, aprantl, vsk Reviewed By: djtodoro, vsk Subscribers: hiraditya, llvm-commits Tags: #debug-info, #llvm Differential Revision: https://reviews.llvm.org/D75036
-
David Stenberg authored
Summary: This is a preparatory patch for D75036, in which a debug expression is associated with each parameter register in the worklist. In that patch the two lambda functions addToWorklist() and finishCallSiteParams() grow a bit, so move those out to separate functions. This patch also prepares for each parameter register having their own expression moving the creation of the DbgValueLoc into finishCallSiteParams(). Reviewers: djtodoro, vsk Reviewed By: djtodoro, vsk Subscribers: hiraditya, llvm-commits Tags: #debug-info, #llvm Differential Revision: https://reviews.llvm.org/D75050
-
Raphael Isemann authored
The GetOffset documentation was copied from the function above so I completely deleted that one. The rest was just outdated documentation that didn't keep up with renamed or changed function parameters/return types.
-
Sam Parker authored
This use is already attached to the BUNDLE instruction but is lost after finalisation. Differential Revision: https://reviews.llvm.org/D75186
-
Raphael Isemann authored
-
Simon Tatham authored
I made that file by pasting together several pieces, and forgot to take out the #include <arm_mve.h> from the tops of the later ones, so the test was pointlessly including the same header five times. NFC.
-
Sam Parker authored
-
Sjoerd Meijer authored
In some cases Clang does not perform merging of instructions AND and TST (aka ANDS xzr). Example: tst x2, x1 and x3, x2, x1 to: ands x3, x2, x1 This patch add such merging during instruction selection: when AND is replaced with ANDS instruction in LowerSELECT_CC, all users of AND also should be changed for using this ANDS instruction Short discussion on mailing list: http://llvm.1065342.n5.nabble.com/llvm-dev-ARM-Peephole-optimization-instructions-tst-add-tp133109.html Patch by Pavel Kosov. Differential Revision: https://reviews.llvm.org/D71701
-
Kadir Cetinkaya authored
Reviewers: sammccall Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D75193
-
Guillaume Chatelet authored
Summary: Tested on MacOSX and Linux. For robustness we can go the OpenCV way and add individual c++ files with intrinsics. https://github.com/opencv/opencv/blob/master/cmake/checks/cpu_avx2.cpp Reviewers: sivachandra, abrachet Subscribers: mgorny, MaskRay, tschuett, libc-commits Tags: #libc-project Differential Revision: https://reviews.llvm.org/D74897
-
Kadir Cetinkaya authored
Reviewers: sammccall Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D75176
-
Alexander Belyaev authored
Differential Revision: https://reviews.llvm.org/D75208
-
Siva Chandra Reddy authored
This argument can be used to specify the entrypoint name if it is different from the target name. Reviewers: gchatelet, abrachet Differential Revision: https://reviews.llvm.org/D74948
-
ogiroux authored
-
Nemanja Ivanovic authored
I added test cases that rely on the availability of the PPC target into the general directory for the loop vectorizer. This causes failures on bots that don't build the PPC target. Moving them to the PowerPC directory to fix this.
-
Nemanja Ivanovic authored
A recent commit (https://reviews.llvm.org/rG66c120f02560ef528a60924104ead66f330190f1) changed the cost for calls to functions that have a vector version for some vectorization factor. However, no check is performed for whether the vectorization factor matches the current one being cost modeled. This leads to attempts to widen call instructions to a vectorization factor for which such a function does not exist, which in turn leads to an assertion failure. This patch adds the check for vectorization factor (i.e. not just that the called function has a vector version for some VF, but that it has a vector version for this VF). Differential revision: https://reviews.llvm.org/D74944
-
Matt Arsenault authored
-
Matt Arsenault authored
The type parameter passed into lower is invalid and should be removed from the function.
-
Matt Arsenault authored
The s64 case currently crashes, so leave that for later.
-
Matt Arsenault authored
-
Stefanos Baziotis authored
Information taken from https://youtu.be/3pRhvQi7Z10?t=481 and comments in LoopSimplify.h. Reviewed By: Meinersbur Differential Revision: https://reviews.llvm.org/D74989
-
Craig Topper authored
[X86] Add test cases showing incorrect setting of nofpexcept flag due to CSE occuring during SelectionDAG creation. These tests generate two nodes that are identical except for the metadata that indicates their exception behavior. The nodes get CSEd by SelectionDAG, but the nofpexcept flag is being set based only on the fpexcept.ignore node being created last. We need to detect this case and intersect the flags similar to what is already done with fast math flags.
-
Fangrui Song authored
Test cleanups.
-
Kirill Naumov authored
Add extra diagnostics for the inline cost analysis under -print-instruction-deltas cl option. When enabled along with -debug-only=inline-cost it prints the IR of inline candidate annotated with cost and threshold change per every instruction. Reviewed By: apilipenko, davidxl, mtrofin Differential Revision: https://reviews.llvm.org/D71501
-
Craig Topper authored
-
Louis Dionne authored
This only showed up in C++11/C++14 where the static_assert below was ifdef'd out, and the variable was indeed unused.
-
Craig Topper authored
We'd already passed most everything else. Might was well pass these two things and stop passing Op.
-
Craig Topper authored
Previously this code was called into two ways, either a FrameIndexSDNode was passed in StackSlot. Or a load node was passed in the argument called StackSlot. This was determined by a dyn_cast to FrameIndexSDNode. In the case of a load, we had to go find the real pointer from operand 0 and cast the node to MemSDNode to find the pointer info. For the stack slot case, the code assumed that the stack slot was perfectly aligned despite not being the creator of the slot. This commit modifies the interface to make the caller responsible for passing all of the required information to avoid all the guess work and reverse engineering. I'm not aware of any issues with the original code after an earlier commit to fix the alignment of one of the stack objects. This is just clean up to make the code less surprising.
-
Louis Dionne authored
Revert "[libc++] Do not set the `availability=XXX` feature when not testing against a system libc++" This reverts commit 7dd6a862, which broke more tests than it fixed.
-
Louis Dionne authored
The markup wasn't quite right, and that broke compilation with availability markup enabled. I'm disabling it until I have time to fix it properly to get the CI mostly green again.
-
Richard Smith authored
is ambiguous, but only one of the possible lookup results could possibly be right. Clang recently started diagnosing ambiguity in more cases, and this broke the build of Firefox. GCC, ICC, MSVC, and previous versions of Clang all accept some forms of ambiguity here (albeit different ones in each case); this patch mostly accepts anything any of those compilers accept.
-
Erik Pilkington authored
This leak is expected, see the discussion on commit 85fb9976
-
Adrian Prantl authored
This allows for diagnosing malformed LLVM IR debug info metadata such as the one in the testcase. <rdar://problem/59756060> Differential Revision: https://reviews.llvm.org/D75212
-
Craig Topper authored
-
Craig Topper authored
[X86] Use proper alignment for stack temporary and correct MachinePointerInfo for stack accesses in LowerUINT_TO_FP.
-
Craig Topper authored
-
Craig Topper authored
[X86] Add proper MachinePointerInfo to the loads/stores created for moving data between SSE and X87 in X86DAGToDAGISel::PreprocessISelDAG
-