- Jul 22, 2020
-
-
Jordan Rupprecht authored
-
Jonas Devlieghere authored
-
Logan Smith authored
This avoids massive warning spam due to the unit tests' use of gtest and gmock, which do not use the 'override' keyword in their sources. Differential Revision: https://reviews.llvm.org/D84213
-
- Jul 21, 2020
-
-
Diego Caballero authored
Reviewed By: ftynse Differential Revision: https://reviews.llvm.org/D84216
-
- Jul 22, 2020
-
-
Jonas Devlieghere authored
RecordInterestingDirectory was added to collect dSYM bundles and their content. For the current working directory we only want the directory to be part of the VFS, not necessarily its contents. This patch renames the current method to RecordInterestingDirectoryRecursively and adds a new one that's not recursive.
-
- Jul 21, 2020
-
-
Sidharth Baveja authored
Summary: This patch adds the ability to peel off iterations of the first loop in loop fusion. This can allow for both loops to have the same trip count, making it legal for them to be fused together. Here is a simple scenario peeling can be used in loop fusion: for (i = 0; i < 10; ++i) a[i] = a[i] + 3; for (j = 1; j < 10; ++j) b[j] = b[j] + 5; Here is we can make use of peeling, and then fuse the two loops together. We can peel off the 0th iteration of the loop i, and then combine loop i and j for i = 1 to 10. a[0] = a[0] +3; for (i = 1; i < 10; ++i) { a[i] = a[i] + 3; b[i] = b[i] + 5; } Currently peeling with loop fusion is only supported for loops with constant trip counts and a single exit point. Both unguarded and guarded loops are supported. Author: sidbav (Sidharth Baveja) Reviewers: kbarton, Meinersbur, bkramer, Whitney, skatkov, ashlykov, fhahn, bmahjour Reviewed By: bmahjour Subscribers: bmahjour, mgorny, hiraditya, zzheng Tags: LLVM Differential Revision: https://reviews.llvm.org/D82927 -
Chris Gyurgyik authored
Fixes typo for strstr in entrypoints. str -> src.
-
Fangrui Song authored
* If two group members are combined, we should leave just one index in the SHT_GROUP content. * If a group member is discarded (/DISCARD/ or upcoming -r --gc-sections combination), we should drop its index in the SHT_GROUP content. LLD currently crashes (`getOutputSection()` is null). Reviewed By: psmith Differential Revision: https://reviews.llvm.org/D84129
-
cgyurgyik authored
Reviewed By: sivachandra Differential Revision: https://reviews.llvm.org/D83956
-
Vince Bridgers authored
Summary: The purpose of this change is to do a small refactoring of code in ASTImporterTest.cpp by moving it to ASTImporterFixtures.h in order to support tests of downstream custom types and minimize the "living downstream burden" of frequent integrations from community to a downstream repo that implements custom AST import tests. Reviewers: martong, a.sidorin, shafik Reviewed By: martong Subscribers: balazske, dkrupp, bjope, rnkovacs, teemperor, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D83970
-
Fangrui Song authored
[llvm-readobj] Construct relocation-aware DWARFDataExtractor to decode .eh_frame addresses correctly In an object file, a "PC Begin" field in a FDE is usually relocated by a PC-relative relocation. Use a relocation-aware DWARFDataExtractor overload (with DWARFContext and a reference to its internal .eh_frame representation) to decode addresses correctly. In an object file, most sections have addresses of zero. So the displayed addresses are almost always offsets relative to the start of the associated text section. DWARFContext::create handles .eh_frame and .rela.eh_frame by itself, so if there are more than one .eh_frame (technically possible, but almost always erronerous in practice), this will only handle the first one. Supporting multiple .eh_frame is beyond the scope of this patch. Reviewed By: grimar, jhenderson Differential Revision: https://reviews.llvm.org/D84106
-
Saiyedul Islam authored
Following tests were disabled for clang-11 after upgrading to version 5.0 in D82963: 1. openmp/runtime/test/env/kmp_set_dispatch_buf.c 2. openmp/runtime/test/worksharing/for/kmp_set_dispatch_buf.c They are also failing for clang-12. Thus this temporary disabling until they are fixed. Reviewed By: ABataev Differential Revision: https://reviews.llvm.org/D84241
-
Jon Roelofs authored
This is a necessary cleanup after having expanded a SCEV. See: https://reviews.llvm.org/D84071#inline-774728 Differential Revision: https://reviews.llvm.org/D84174
-
Jon Roelofs authored
Being "precise" here is getting us into trouble with one of the EXPENSIVE_CHECKS buildbots, see [1]. Rather than reporting IR additions that later get rolled back as "no change", instead we now conservatively report that there was. 1: http://lists.llvm.org/pipermail/llvm-dev/2020-July/143509.html Differential Revision: https://reviews.llvm.org/D84071
-
Chris Morin authored
-
Mitch Phillips authored
Note: Resubmission with frame pointers force-enabled to fix builds with -DCOMPILER_RT_BUILD_BUILTINS=False Summary: Splits the unwinder into a non-segv (for allocation/deallocation traces) and a segv unwinder. This ensures that implementations can select an accurate, slower unwinder in the segv handler (if they choose to use the GWP-ASan provided one). This is important as fast frame-pointer unwinders (like the sanitizer unwinder) don't like unwinding through signal handlers. Reviewers: morehouse, cryptoad Reviewed By: morehouse, cryptoad Subscribers: cryptoad, mgorny, eugenis, pcc, #sanitizers Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D83994
-
Sander de Smalen authored
The default calling convention needs to save/restore the SVE callee saves according to the SVE PCS when the function takes or returns scalable types, even when the `aarch64_sve_vector_pcs` CC is not specified for the function. Reviewers: efriedma, paulwalker-arm, david-arm, rengolin Reviewed By: paulwalker-arm Differential Revision: https://reviews.llvm.org/D84041
-
MaheshRavishankar authored
SPIR-V lowering does not use `MemrefDescriptor`s when lowering memref types. This adds rationale for the choice made. Differential Revision: https://reviews.llvm.org/D84184
-
George Mitenkov authored
This patch introduces conversion pattern for `spv.selection` op. The conversion can only be applied to selection with all blocks being reachable. Moreover, selection with control attributes "Flatten" and "DontFlatten" is not supported. Since the `PatternRewriter` hook for block merging has not been implemented for `ConversionPatternRewriter`, merge and continue blocks are kept separately. Reviewed By: antiagainst, ftynse Differential Revision: https://reviews.llvm.org/D83860
-
Bruno Ricci authored
The changes to "AlignTrailingComments" and "CommentPragmas" did not result in what I expected (just leave the special comments alone). Instead now the following: void test() { int i; // expected-error // expected-warning } is formatted into: void test() { int i; // expected-error // expected-warning } which is even worse. -
AndreyChurbanov authored
-
Louis Dionne authored
Most of the code in compiler_rt is C code. However, clang_rt.profile contains the InstrProfilingRuntime.cpp file, which builds as C++. This means that including e.g. <stdint.h> will actually include libc++'s <stdint.h> and then #include_next the system's <stdint.h>. However, if the target we're building compiler-rt for isn't supported by libc++, this will lead to a failure since libc++'s <stdint.h> includes <__config>, which performs various checks. Since the goal seems to *not* be including any header from the C++ Standard Library in clang_rt.profile, using -nostdinc++ to ensure that doesn't happen unknowingly seems to make sense. rdar://65852694 Differential Revision: https://reviews.llvm.org/D84205
-
AndreyChurbanov authored
-
Petre-Ionut Tudor authored
Summary: Teach LLVM to recognize the above pattern, where the operands are either signed or unsigned types. Subscribers: kristof.beyls, hiraditya, danielkiss, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D83777
-
Raphael Isemann authored
Summary: FormattersContainer currently has an unused `m_name` member. Usually LLDB allows giving objects names, but for the FormattersContainer it seems excessive. There are only 4 FormattersContainer variables in LLDB and they are not usually passed around, so one can always just go up a few frames when debugging to find out which FormattersContainer you're dealing with. Reviewers: mib, davide Reviewed By: mib Subscribers: JDevlieghere Differential Revision: https://reviews.llvm.org/D84154
-
Muhammad Omair Javaid authored
This patch fixes build on lldb-x64-windows-ninja. The error is caused by use of two leading underscores. According to MSVC documentation: In Microsoft C++, identifiers with two leading underscores are reserved for compiler implementations. https://docs.microsoft.com/en-us/cpp/cpp/keywords-cpp?view=vs-2019
-
Jay Foad authored
The new implementation makes it clear that there are exactly two conditional stores (after the initial no-op optimization). By contrast the old implementation had seven conditionals, some hidden inside other functions. This commit can change the order of operands in operand lists, hence the tweak to one test case. Differential Revision: https://reviews.llvm.org/D80116
-
David Green authored
We can sometimes get into the situation where the operand to a vctp intrinsic becomes constant, such as after a loop is fully unrolled. This adds the constant folding needed for them, allowing them to simplify away and hopefully simplifying remaining instructions. Differential Revision: https://reviews.llvm.org/D84110
-
Nico Weber authored
-
Serge Pavlov authored
Documentation on CreateProcessW states that maximal size of command line is 32767 characters including ternimation null character. In the function llvm::sys::commandLineFitsWithinSystemLimits this limit was set to 32768. As a result if command line was exactly 32768 characters long, a response file was not created and CreateProcessW was called with too long command line. Differential Revision: https://reviews.llvm.org/D83772
-
Djordje Todorovic authored
In addition, move the definition of the class into the Debugify.h, so we can use it from different levels. The motivation for this is D82547. Differential Revision: https://reviews.llvm.org/D83391
-
Haojian Wu authored
I hit the null-deference crash when opening ASTReaderDecl.cpp. The BaseType can be a nullptr,
-
Nithin Vadukkumchery Rajendrakumar authored
Summary: Implemented modeling for unique_ptr::swap() SmartPtrModeling Subscribers: xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, Charusso, martong, ASDenysPetrov, cfe-commits Reviewers: NoQ, Szelethus, vsavchenko, xazax.hun Reviewed By: NoQ, vsavchenko, xazax.hun Tags: #clang Differential Revision: https://reviews.llvm.org/D8387 -
Kirill Bobyrev authored
Related revision: https://reviews.llvm.org/D83826
-
Muhammad Omair Javaid authored
This reverts commit d9920e01.
-
Muhammad Omair Javaid authored
LinuxPTraceDefines_arm64sve.h defines essential macros for manipulating AArch64 SVE core dump registers. Add guard for aarch64/Linux hosts where newer versions of ptrace.h or sigcontext.h might already define SVE macros. Differential Revision: https://reviews.llvm.org/D83541
-
Kirill Bobyrev authored
FuzzyFindRequest's toProtobuf is called on the client side (hence LocalIndexRoot must be present) and fromProtobuf - on the server.
-
Hans Wennborg authored
It was causing tests to fail in -DCOMPILER_RT_BUILD_BUILTINS=OFF builds: GwpAsan-Unittest :: ./GwpAsan-x86_64-Test/BacktraceGuardedPoolAllocator.DoubleFree GwpAsan-Unittest :: ./GwpAsan-x86_64-Test/BacktraceGuardedPoolAllocator.UseAfterFree see comment on the code review. > Summary: > Splits the unwinder into a non-segv (for allocation/deallocation traces) and a > segv unwinder. This ensures that implementations can select an accurate, slower > unwinder in the segv handler (if they choose to use the GWP-ASan provided one). > This is important as fast frame-pointer unwinders (like the sanitizer unwinder) > don't like unwinding through signal handlers. > > Reviewers: morehouse, cryptoad > > Reviewed By: morehouse, cryptoad > > Subscribers: cryptoad, mgorny, eugenis, pcc, #sanitizers > > Tags: #sanitizers > > Differential Revision: https://reviews.llvm.org/D83994 This reverts commit 502f0cc0.
-
Florian Hahn authored
If we inferred a range for the function return value, we can add !range at all call-sites of the function, if the range does not include undef. Reviewers: efriedma, davide, nikic Reviewed By: efriedma Differential Revision: https://reviews.llvm.org/D83952
-
Kirill Bobyrev authored
Summary: Remote server should not send messages that are invalid and will cause problems on the client side. The client should not be affected by server's failures whenever possible. Also add more error messages and logs. Reviewers: sammccall Reviewed By: sammccall Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, usaxena95, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D83826
-