- May 27, 2020
-
-
Alex Langford authored
Summary: Objective-C names are stored in m_demangled, not in m_mangled. The method in the condition will never return true. Differential Revision: https://reviews.llvm.org/D79823
-
Jonas Devlieghere authored
Work around global module caching during reproducer replay. See inline comment for the details.
-
Sean Silva authored
Summary: This op extracts an extent from a shape. This also is the first op which constant folds to shape.const_size, which revealed that shape.const_size needs a folder (ConstantLike ops seem to always need folders for the constant folding infra to work). Differential Revision: https://reviews.llvm.org/D80394
-
Alexander Shaposhnikov authored
cctools strip has the option "-T" which removes Swift symbols. This diff implements this option in llvm-strip for MachO. Test plan: make check-all Differential revision: https://reviews.llvm.org/D80099
-
Arthur Eubanks authored
Summary: preallocated and musttail can work together, but we don't want to call @llvm.call.preallocated.setup() to modify the stack in musttail calls. So we shouldn't have the "preallocated" operand bundle when a preallocated call is musttail. Also disallow use of preallocated on calls without preallocated. Codegen not yet implemented. Subscribers: hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D80581
-
stevewan authored
Summary: Based on comments received in D80415 pertinent to test case format, the following fixes are provided to other tests in 'aix-ld.c' for the sake of consistency and readability, - Align flags in RUN directives vertically. - Align patterns in CHECK directives vertically. - Remove the ‘-o %t.o’ as it’s unnecessary for tests with ‘-###’. - Fix typos in comments. Reviewers: ZarkoCA, hubert.reinterpretcast, daltenty Reviewed By: hubert.reinterpretcast Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D80532
-
Kristóf Umann authored
If you remember the mail [1] I sent out about how I envision the future of the already existing checkers to look dependencywise, one my main points was that no checker that emits diagnostics should be a dependency. This is more problematic for some checkers (ahem, RetainCount [2]) more than for others, like this one. The MallocChecker family is a mostly big monolithic modeling class some small reporting checkers that only come to action when we are constructing a warning message, after the actual bug was detected. The implication of this is that NewDeleteChecker doesn't really do anything to depend on, so this change was relatively simple. The only thing that complicates this change is that FreeMemAux (MallocCheckers method that models general memory deallocation) returns after calling a bug reporting method, regardless whether the report was ever emitted (which may not always happen, for instance, if the checker responsible for the report isn't enabled). This return unfortunately happens before cleaning up the maps in the GDM keeping track of the state of symbols (whether they are released, whether that release was successful, etc). What this means is that upon disabling some checkers, we would never clean up the map and that could've lead to false positives, e.g.: error: 'warning' diagnostics seen but not expected: File clang/test/Analysis/NewDelete-intersections.mm Line 66: Potential leak of memory pointed to by 'p' File clang/test/Analysis/NewDelete-intersections.mm Line 73: Potential leak of memory pointed to by 'p' File clang/test/Analysis/NewDelete-intersections.mm Line 77: Potential leak of memory pointed to by 'p' error: 'warning' diagnostics seen but not expected: File clang/test/Analysis/NewDelete-checker-test.cpp Line 111: Undefined or garbage value returned to caller File clang/test/Analysis/NewDelete-checker-test.cpp Line 200: Potential leak of memory pointed to by 'p' error: 'warning' diagnostics seen but not expected: File clang/test/Analysis/new.cpp Line 137: Potential leak of memory pointed to by 'x' There two possible approaches I had in mind: Make bug reporting methods of MallocChecker returns whether they succeeded, and proceed with the rest of FreeMemAux if not, Halt execution with a sink node upon failure. I decided to go with this, as described in the code. As you can see from the removed/changed test files, before the big checker dependency effort landed, there were tests to check for all the weird configurations of enabled/disabled checkers and their messy interactions, I largely repurposed these. [1] http://lists.llvm.org/pipermail/cfe-dev/2019-August/063070.html [2] http://lists.llvm.org/pipermail/cfe-dev/2019-August/063205.html Differential Revision: https://reviews.llvm.org/D77474
-
Kirstóf Umann authored
[analyzer][RetainCount] Tie diagnostics to osx.cocoa.RetainCount rather then RetainCountBase, for the most part Similarly to other patches of mine, I'm trying to uniformize the checker interface so that dependency checkers don't emit diagnostics. The checker that made me most anxious so far was definitely RetainCount, because it is definitely impacted by backward compatibility concerns, and implements a checker hierarchy that is a lot different to other examples of similar size. Also, I don't have authority, nor expertise regarding ObjC related code, so I welcome any objection/discussion! Differential Revision: https://reviews.llvm.org/D78099
-
- May 26, 2020
-
-
Chris Jackson authored
Previous commit: bd7ff5d9 - Added missing x86 triples - Added missing asserts
-
Jon Roelofs authored
Differential Revision: https://reviews.llvm.org/D80436
-
Vitaly Buka authored
Summary: This patch makes the following changes to SanCov and its complementary Python script in order to resolve issues pertaining to non-UNIX file paths in JSON symbolization information: * Convert all paths to use forward slash. * Update `coverage-report-server.py` to correctly handle paths to sources which contain spaces. * Remove Linux platform restriction for all SanCov unit tests. All SanCov tests passed when ran on my local Windows machine. Patch by Douglas Gliner. Reviewers: kcc, filcab, phosek, morehouse, vitalybuka, metzman Reviewed By: vitalybuka Subscribers: vsk, Dor1s, llvm-commits Tags: #sanitizers, #llvm Differential Revision: https://reviews.llvm.org/D51018
-
Vedant Kumar authored
Summary: A struct argument can be passed-by-value to a callee via a pointer to a temporary stack copy. Add support for emitting an entry value DBG_VALUE when an indirect parameter DBG_VALUE becomes unavailable. This is done by omitting DW_OP_stack_value from the entry value expression, to make the expression describe the location of an object. rdar://63373691 Reviewers: djtodoro, aprantl, dstenb Subscribers: hiraditya, lldb-commits, llvm-commits Tags: #lldb, #llvm Differential Revision: https://reviews.llvm.org/D80345
-
Vitaly Buka authored
-
Vitaly Buka authored
-
Stanislav Mekhanoshin authored
Differential Revision: https://reviews.llvm.org/D80587
-
Florian Hahn authored
I think the current code dealing with connecting the unrolled iterations is a bit more complicated than necessary currently. To connect the unrolled iterations, we have to update the unrolled latch blocks to branch to the header of the next unrolled iteration. We need to do this regardless whether the latch is exiting or not. Additionally, we try to turn the conditional branch in the exiting block to an unconditional one. This is an optimization only; alternatively we could leave the conditional branches in place and rely on other passes to simplify the conditions. Logically, this is a separate step from connecting the latches to the headers, but it is convenient to fold them into the same loop, if the latch is also exiting. For headers (or other non-latch exiting blocks, this is done separately). Hopefully the patch with additional comments makes things a bit clearer. Reviewers: efriedma, dmgreen, hfinkel, Whitney Reviewed By: efriedma Differential Revision: https://reviews.llvm.org/D80544
-
Davide Italiano authored
-
Adrian Prantl authored
Don't run tests that use address sanitizer inside an address-sanitized LLDB. The tests don't support that configuration. Incidentally they were skipped on green dragon for a different reason, so this hasn't come up there before.
-
Marco Elver authored
Summary: This permits combining -fsanitize-coverage with -fsanitize=bounds or -fsanitize=thread. Note that, GCC already supports combining these. Tested: - Add Clang end-to-end test checking IR is generated for both combinations of sanitizers. - Several previously failing TSAN tests now pass. Bugzilla: https://bugs.llvm.org/show_bug.cgi?id=45831 Reviewers: vitalybuka Reviewed By: vitalybuka Subscribers: #sanitizers, dvyukov, nickdesaulniers, cfe-commits Tags: #clang, #sanitizers Differential Revision: https://reviews.llvm.org/D79628
-
Matt Arsenault authored
I'm guessing this was a holdover from when 0 was an invalid stack pointer, but surprised nobody has discovered this before. Also don't allow offset folding for -1 pointers, since it looks weird to partially fold this.
-
Nicolas Vasilache authored
-
Nicolas Vasilache authored
-
Jonas Devlieghere authored
-
Chris Jackson authored
Reviewers: vsk, aprantl Differential Revision: https://reviews.llvm.org/D79868
-
Stanislav Mekhanoshin authored
Differential Revision: https://reviews.llvm.org/D79217
-
Nicolas Vasilache authored
[mlir][Vector] Add more vector.contract -> outerproduct lowerings and fix vector.contract type inference. This revision expands the types of vector contractions that can be lowered to vector.outerproduct. All 8 permutation cases are support. The idiomatic manipulation of AffineMap written declaratively makes this straightforward. In the process a bug with the vector.contract verifier was uncovered. The vector shape verification part of the contract op is rewritten to use AffineMap composition. One bug in the vector `ops.mlir` test is fixed and a new case not yet captured is added to the vector`invalid.mlir` test. Differential Revision: https://reviews.llvm.org/D80393
-
Shoaib Meenai authored
Clang has supported __builtin_assume_aligned since r217349 back in 2014, so the comment is very out of date.
-
Matt Arsenault authored
Prepare to switch to using StoreSDNode for atomic stores.
-
Pete Steinfeld authored
Summary: We were not detecting declaring multiple interfaces to the same procedure. Also, we were not handling the initialization of entitiies where the associated Symbol had previously had errors. I added the function `IsInterfaceSet()` to ProcEntityDetails to see if the value of `interface_` had been previously set. I then checked this function before calling set_interface() and emitted an error message if the interface was already set. Also, in situations where we were emitting error messages for symbols, I set the Error flag on the Symbol. Then when performing initialization on the Symbol, I first check to see if the Symbol had an error. Reviewers: tskeith, klausler, DavidTruby Subscribers: llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D80453
-
Stefanos Baziotis authored
-
Jonas Devlieghere authored
-
David Blaikie authored
-
Eric Christopher authored
-
Sanjay Patel authored
The -reassociate pass tends to transform this kind of pattern into something that is worse for vectorization and codegen. See PR43953: https://bugs.llvm.org/show_bug.cgi?id=43953 Follows-up the FP version of the same transform: rGa0ce2338a083
-
Sanjay Patel authored
-
Sanjay Patel authored
-
Lei Huang authored
Summary: This patch simply adds support for the new CPU in anticipation of Power10. There isn't really any functionality added so there are no associated test cases at this time. Reviewers: stefanp, nemanjai, amyk, hfinkel, power-llvm-team, #powerpc Reviewed By: stefanp, nemanjai, amyk, #powerpc Subscribers: NeHuang, steven.zhang, hiraditya, llvm-commits, wuzish, shchenz, cfe-commits, kbarton, echristo Tags: #clang, #powerpc, #llvm Differential Revision: https://reviews.llvm.org/D80020
-
Adam Balogh authored
-
Nemanja Ivanovic authored
The test case provided in PR45709 can be simplified by DCE to an empty function. To prevent this from happening if DCE is run prior to ISEL in the back end, just add optnone to the function. The behaviour it is testing for is in the SDAG legalization and is not sensitive to optnone so the test case still achieves its desired objective.
-
Kostya Serebryany authored
Summary: Fixes this build error with GCC 9.3.0: ``` ../lib/fuzzer/afl/afl_driver.cpp:114:30: error: expected unqualified-id before string constant 114 | __attribute__((weak)) extern "C" void __sanitizer_set_report_fd(void *); | ^~~ ``` Reviewers: metzman, kcc Reviewed By: kcc Subscribers: #sanitizers Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D80479
-