This project is mirrored from https://github.com/llvm/llvm-project.git.
Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer or owner.
Last successful update .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer or owner.
Last successful update .
- Feb 08, 2022
-
-
Joseph Huber authored
-
serge-sans-paille authored
Major user-facing changes: llvm/Bitcode/BitcodeReader.h no longer includes llvm/IR/ModuleSummaryIndex.h Some statistics: clang++ -E -Iinclude -I../llvm/include ../llvm/lib/Bitcode/Reader/*.cpp -std=c++14 -fno-rtti -fno-exceptions | wc -l after: 493335 before: 539640 Discourse thread on the topic: https://discourse.llvm.org/t/include-what-you-use-include-cleanup/ Differential Revision: https://reviews.llvm.org/D119091
-
Joseph Huber authored
Summary: This patch changes the ClangLinkerWrapper to use the executable path when searching for the lld binary. Previously we relied on the program name. Also not finding 'llvm-strip' is not considered an error anymore because it is an optional optimization.
-
Jonas Devlieghere authored
As Pavel pointed out, on Apple Silicon "b main" stops at a point after the variable has already been initialized. This patch updates the test case to avoids that. I've also split the test into separate files so its easier to reproduce the individual scenarios without having to build any shared state.
-
Nikolas Klauser authored
This patch makes the uncontrovertial changes to the pipeline. Reviewed By: ldionne, #libc Spies: libcxx-commits, arichardson Differential Revision: https://reviews.llvm.org/D119041
-
Fangrui Song authored
-
David Green authored
The vectorizer will choose at times to "vectorize" loops with a scalar factor (VF=1) with interleaving (IC > 1). This can occasionally produce better code than the unroller (notable for reductions where it can produce independent reduction chains that are combined after the loop). At times this is not very beneficial though, for example when runtime checks are needed or when the scalar code requires predication. This addresses the second point, preventing the vectorizer from interleaving when the scalar loop will require predication. This prevents it from making a bit of a mess, that is worse than the original and better left for the unroller to unroll if beneficial. It helps reverse some of the regressions from D118090. Differential Revision: https://reviews.llvm.org/D118566
-
Arjun P authored
Add the class MultiAffineFunction which represents functions whose domain is an IntegerPolyhedron and which produce an output given by a tuple of affine expressions in the IntegerPolyhedron's ids. Also add support for piece-wise MultiAffineFunctions, which are defined on a union of IntegerPolyhedrons, and may have different output affine expressions on each IntegerPolyhedron. Thus the function is affine on each individual IntegerPolyhedron piece in the domain. This is part of a series of patches leading up to parametric integer programming. Depends on D118778. Reviewed By: Groverkss Differential Revision: https://reviews.llvm.org/D118779
-
Vang Thao authored
Debug position data is cleared after ScheduleDAGMILive::schedule() due to it also calling placeDebugValues(). Make it so the data is not cleared after initial call to placeDebugValues since we will call it again after reverting a schedule. Secondly, since we skip debug instructions when reverting the schedule on AMDGPU, all debug instructions are now moved to the end of the scheduling region. RegionEnd points to the beginning of this chunk of debug instructions since it was not incremented when a debug instruction was skipped. RegionBegin may also point to the same debug instruction if Unsched.front() is a debug instruction thus shrinking the region to 1. Fix RegionBegin and RegionEnd so that they point to the current beginning and ending before calling placeDebugValues() since both vars will be used as reference points to move debug instructions back. Reviewed By: rampitec Differential Revision: https://reviews.llvm.org/D119022
-
Vladislav Khmelevsky authored
Separate heatmap from bolt and build it as standalone tool. Reviewed By: maksfb Differential Revision: https://reviews.llvm.org/D118946
-
Nikolas Klauser authored
Currently GCC produces lots of warnings. Most of them are `-Wattributes`, but these warnings are completly ignored by everybody. So let's disable -Wattributes and make the output cleaner. Reviewed By: ldionne, #libc Spies: libcxx-commits, mgorny Differential Revision: https://reviews.llvm.org/D119140
-
Florian Mayer authored
-
Fangrui Song authored
to decrease sizeof(SymbolUnion) from 72 to 64 on ELF64 platforms. Use a dummy `Undefined` to prevent null pointer dereference (though unused) `*rel.sym` in InputSectionBase::relocateAlloc. The relocation order may shuffle a bit, but otherwise there is no behavior difference.
-
Florian Hahn authored
Add an additional access so the full runtime checks are still generated, even after D119078.
-
Fangrui Song authored
Reviewed By: #libc, ldionne, Quuxplusone Differential Revision: https://reviews.llvm.org/D119052
-
Alexander Kornienko authored
This reverts commit f9e3ca54. The commit results in internal test failures. Test case provided offline.
-
Florian Hahn authored
By using IRBuilderBase instead of IRBuilder<> a forward declaration can be used instead of including IRBuilder.h
-
Adrian Prantl authored
This reverts commit d42765b3.
-
Jonas Devlieghere authored
Skip the part of TestGdbRemoteMemoryAllocation.py that attempts to allocate both writable and executable memory.
-
Matthias Springer authored
* Implement `FlatAffineConstraints::getConstantBound(EQ)`. * Inject a simpler constraint for loops that have at most 1 iteration. * Taking into account constant EQ bounds of FlatAffineConstraint dims/symbols during canonicalization of the resulting affine map in `canonicalizeMinMaxOp`. Differential Revision: https://reviews.llvm.org/D119153
-
Sam James authored
Add SPARC to the list of platforms for which we provide a full unwind implementation which leads to _Unwind_Backtrace being defined within libunwind.so. Likewise for PPC (see D118320 for background). Reviewed By: #libunwind, MaskRay, Arfrever Differential Revision: https://reviews.llvm.org/D119068
-
Jonas Devlieghere authored
This fixes TestGdbRemoteSingleStep.py and TestGdbRemote_vCont.py. This patch updates the test to account for the possibility that the constants are already materialized. This appears to behave differently between embedded arm64 devices and Apple Silicon.
-
Arthur Eubanks authored
-
Arthur Eubanks authored
If we call CGOpenCLRuntime::convertOpenCLSpecificType() multiple times we should get the same type back. Reviewed By: svenvh Differential Revision: https://reviews.llvm.org/D119011
-
Mariusz Ceier authored
lld/ELF/OutputSections.cpp includes llvm/Config/config.h for LLVM_ENABLE_ZLIB definition, but llvm/Config/config.h doesn't exist in standalone build. To fix this, this patch moves LLVM_ENABLE_ZLIB from config.h to llvm-config.h and updates OutputSections.cpp to include llvm-config.h instead of config.h Reviewed By: MaskRay, mgorny Differential Revision: https://reviews.llvm.org/D119058
-
Sanjay Patel authored
This is a follow-up suggested in D119060. Instead of checking each of the bottom 2 bits individually, we can check them together and handle the possibility that we demand both together. https://alive2.llvm.org/ce/z/C2ihC2 Differential Revision: https://reviews.llvm.org/D119139
-
Adrian Prantl authored
-
David Goldman authored
Roll forward of https://reviews.llvm.org/D117056 with a fix. Proper initialization of `IsPrivateHeader` was missing, causing failures on Linux.
-
Nathan Sidwell authored
The parsing of nested names is a little lax. This corrects that. 1) The 'L' local name prefix cannot appear before a NestedName -- only within it. Let's remove that check from parseName, and then adjust parseUnscopedName to allow it with or without the 'St' prefix. 2) In a nested name, a <template-param>, <decltype> or <substitution> can only appear as the first element. Let's enforce that. Note I do not remove these from the loop, to make the change easier to follow (such a change will come later). 3) Given that, there's no need to special case 'St' outside of the loop, handle it with the other 'S' elements. 4) There's no need to reset 'EndsWithTemplateArgs' after each non-template-arg component. Rather, always clear it and then set it in the template-args case. 5) An template-args cannot immediately follow a template-args. 6) The parsing of a CDtor name with ABITags would attach the tags to the NestedName node, rather than the CDTor node. This is different to how ABITags are attached to an unscopedName. Make it consistent. 7) We remain with only CDTor and UnscopedName requireing construction of a NestedName, so let's drop the PushComponent lambda. 8) Add some tests to catch the new rejected manglings. Reviewed By: ChuanqiXu Differential Revision: https://reviews.llvm.org/D118132
-
Jonas Devlieghere authored
After aed965d5 we no longer demangle and store the full name. The test was updated accordingly but the comment still specified that we should be able to find the symbol by its full demangled name.
-
- Feb 07, 2022
-
-
Nikita Popov authored
This makes the method compatible with opaque pointers.
-
Hans Wennborg authored
Turns out there's still some code referencing this. No harm in keeping it in a bit longer. > as it was planned for removal in clang 15 and we're now past the branch point > > See https://github.com/llvm/llvm-project/issues/19107 > > Differential revision: https://reviews.llvm.org/D118762 This reverts commit 564f9be1.
-
Nikita Popov authored
I dropped this argument in cdc0573f, but did not adjust mlir. (Or rather I did, but I modified a generated file ... oops)
-
Nathan Sidwell authored
We were dropping the [gs] modifier by parsing it in parseExpr, but not forwarding it on to parseUnresolvedName. This is the straightforwards fix to forward that flag -- parseExpr must see past it. Reviewed By: ChuanqiXu Differential Revision: https://reviews.llvm.org/D118504
-
Nathan Sidwell authored
The StdQualifiedName node class is used for names exactly in the std namespace. It is not used for nested names that descend further -- those use a NestedName with NameType("std") as the scope. Representing the compression scheme in the node graph is layer breaking. We can use the same structure for those exactly in std too, and reduce code size a bit. Reviewed By: ChuanqiXu Differential Revision: https://reviews.llvm.org/D118249
-
Mark Murray authored
AArch32/Armv8A introduced the performance deprecation of certain patterns of IT instructions. After some debate internal to ARM, this is now being reverted; i.e. no IT instruction patterns are performance deprecated anymore, as the perfomance degredation is not significant enough. This reverts the following: "ARMv8-A deprecates some uses of the T32 IT instruction. All uses of IT that apply to instructions other than a single subsequent 16-bit instruction from a restricted set are deprecated, as are explicit references to the PC within that single 16-bit instruction. This permits the non-deprecated forms of IT and subsequent instructions to be treated as a single 32-bit conditional instruction." The deprecation no longer applies, but the behaviour may be controlled by the -arm-restrict-it and -arm-no-restrict-it command-line options, with the latter being the default. No warnings about complex IT blocks will be generated. Reviewed By: dmgreen Differential Revision: https://reviews.llvm.org/D118044
-
Nikita Popov authored
IRBuilderBase exists specifically to avoid the need for this.
-
Volodymyr Turanskyy authored
LLVM Embedded Toolchains working group regular sync up calls to start in early March, adding details to the table of sync ups for general reference. Differential Revision: https://reviews.llvm.org/D118884
-
Sanjay Patel authored
This is effectively inverting the transform added with D116804 because the downside of the false dependency of something like "sbb %eax, %eax" is much greater than the upside of eliminating a zeroing instruction on (all?) Intel CPUs. Differential Revision: https://reviews.llvm.org/D118843
-
Sanjay Patel authored
-