- Oct 14, 2020
-
-
Louis Dionne authored
We used <iostream> in several places where we don't actually need the full power of <iostream>, and where using basic `std::printf` is enough. This is better, since `std::printf` can be supported on systems that don't have a notion of locales, while <iostream> can't.
-
Adrian Prantl authored
This makes it symmetric with all other flags and makes it easier to not forget to initialize it. https://reviews.llvm.org/D89351
-
Vedant Kumar authored
The Darwin linker now defaults to ad hoc signing binaries when targeting Apple Silicon. This creates a problem when configuring targets that must be built with entitlements: we either need to add -Wl,-no_adhoc_codesign when building the target, or sign with the force flag set to allow replacing a pre-existing signature. Unconditionally force-signing is the more convenient solution. This doesn't require a ld64 version check, and it's a much less invasive cmake change. Patch by Fred Riss! rdar://70237254 Differential Revision: https://reviews.llvm.org/D89343
-
Vedant Kumar authored
llvm-cov reports a poor error message when the -arch specifier is missing or invalid, and a binary has multiple slices. Make the error message more specific. (This version of the patch avoids using llvm::none_of -- the way I used the utility caused compile errors on many bots, possibly because the wrong overload of `none_of` was selected.) rdar://40312677
-
Jason Molenda authored
the xcode project file for debugserver exists only to make my life easier when I'm working only on debugserver and don't need to build the rest of llvm/lldb. It had many build configurations to reflect our old lldb xcode project file, which is long gone. Removing them to simplify the configurations. Specifically dropping CustomSwift-Debug, DebugClang, DebugPresubmission, CustomSwift-Release, BuildAndIntegration. Keeping Debug & Release.
-
Vedant Kumar authored
This reverts commit b81d4bfb. It's causing some bots to fail to build due to: "error: no matching function for call to ‘__iterator_category".
-
Vedant Kumar authored
llvm-cov reports a poor error message when the -arch specifier is missing or invalid, and a binary has multiple slices. Make the error message more specific. rdar://40312677
-
Jason Molenda authored
Link against CarouselServices on watchos, recognize the WatchComplicationLaunch launch flag option when that framework is available. <rdar://problem/62473967>, <rdar://problem/61230088>
-
rdzhabarov authored
This CL allows user to specify the same name for the operands in the source pattern which implicitly enforces equality on operands with the same name. E.g., Pat<(OpA $a, $b, $a) ... > would create a matching rule for checking equality for the first and the last operands. Equality of the operands is enforced at any depth, e.g., OpA ($a, $b, OpB($a, $c, OpC ($a))). Example usage: Pat<(Reshape $arg0, (Shape $arg0)), (replaceWithValue $arg0)> Note, this feature only covers operands but not attributes. Current use cases are based on the operand equality and explicitly add the constraint into the pattern. Attribute equality will be worked out on the different CL. Differential Revision: https://reviews.llvm.org/D89254
-
Richard Smith authored
The buildbots are displeased. This reverts commit 8d03a972.
-
Richard Smith authored
callee in constant evaluation. We previously made a deep copy of function parameters of class type when passing them, resulting in the destructor for the parameter applying to the original argument value, ignoring any modifications made in the function body. This also meant that the 'this' pointer of the function parameter could be observed changing between the caller and the callee. This change completely reimplements how we model function parameters during constant evaluation. We now model them roughly as if they were variables living in the caller, albeit with an artificially reduced scope that covers only the duration of the function call, instead of modeling them as temporaries in the caller that we partially "reparent" into the callee at the point of the call. This brings some minor diagnostic improvements, as well as significantly reduced stack usage during constant evaluation.
-
Geoffrey Martin-Noble authored
This change removes an unnecessary header introduced in https://github.com/llvm/llvm-project/commit/c0b3abd19a3e. Differential Revision: https://reviews.llvm.org/D89347
-
Duncan P. N. Exon Smith authored
Avoid duplicating code unnecessarily. No functionality change.
-
ahmedsabie authored
[MLIR] Add a foldTrait() mechanism to allow traits to define folding and test it with an Involution trait This is the same diff as https://reviews.llvm.org/D88809/ except side effect free check is removed for involution and a FIXME is added until the dependency is resolved for shared builds. The old diff has more details on possible fixes. Reviewed By: rriddle, andyly Differential Revision: https://reviews.llvm.org/D89333
-
Alberto Magni authored
Update linalg-to-loops lowering for pooling operations to perform padding of the input when specified by the corresponding attribute. Reviewed By: hanchung Differential Revision: https://reviews.llvm.org/D88911
-
Jay Foad authored
This instruction was introduced in GFX10.3, reusing the opcode of v_mac_legacy_f32 from GFX10.1. Differential Revision: https://reviews.llvm.org/D89247
-
LLVM GN Syncbot authored
-
Xiangling Liao authored
AIX has different layout dumping format from other itanium ABIs. And for these two cases, use regex to match AIX format. Differential Revision: https://reviews.llvm.org/D89064
-
Duncan P. N. Exon Smith authored
Split out from https://reviews.llvm.org/D66782, use `Optional<MemoryBufferRef>` in `line_iterator` so you don't need access to a `MemoryBuffer*`. Follow up patches in `clang/` will leverage this. Differential Revision: https://reviews.llvm.org/D89280
-
Duncan P. N. Exon Smith authored
As preparation for changing `LineIterator` to work with `MemoryBufferRef`: - Add an `operator==` that uses buffer pointer identity to ensure two buffers are equivalent. - Split out `MemoryBufferRef.h`, to avoid polluting `LineIterator.h` includers with everything from `MemoryBuffer.h`. This also means moving the `MemoryBuffer` constructor to a source file. Differential Revision: https://reviews.llvm.org/D89279
-
Benjamin Kramer authored
CMake Error at llvm/cmake/modules/AddLLVM.cmake:870 (add_dependencies): The dependency target "Core" of target "mlir-cuda-runner" does not exist. Call Stack (most recent call first): llvm/cmake/modules/AddLLVM.cmake:1169 (add_llvm_executable) mlir/tools/mlir-cuda-runner/CMakeLists.txt:69 (add_llvm_tool) CMake Error at llvm/cmake/modules/AddLLVM.cmake:870 (add_dependencies): The dependency target "LINK_COMPONENTS" of target "mlir-cuda-runner" does not exist. Call Stack (most recent call first): llvm/cmake/modules/AddLLVM.cmake:1169 (add_llvm_executable) mlir/tools/mlir-cuda-runner/CMakeLists.txt:69 (add_llvm_tool) CMake Error at llvm/cmake/modules/AddLLVM.cmake:870 (add_dependencies): The dependency target "Support" of target "mlir-cuda-runner" does not exist. Call Stack (most recent call first): llvm/cmake/modules/AddLLVM.cmake:1169 (add_llvm_executable) mlir/tools/mlir-cuda-runner/CMakeLists.txt:69 (add_llvm_tool)
-
Andrew Paverd authored
This patch adds support for creating Guard Address-Taken IAT Entry Tables (.giats$y sections) in object files, matching the behavior of MSVC. These contain lists of address-taken imported functions, which are used by the linker to create the final GIATS table. Additionally, if any DLLs are delay-loaded, the linker must look through the .giats tables and add the respective load thunks of address-taken imports to the GFIDS table, as these are also valid call targets. Reviewed By: rnk Differential Revision: https://reviews.llvm.org/D87544
-
Stella Laurenzo authored
* Extends Context/Operation interning to cover Module as well. * Implements Module.context, Attribute.context, Type.context, and Location.context back-references (facilitated testing and also on the TODO list). * Adds method to create an empty Module. * Discovered missing in npcomp. Differential Revision: https://reviews.llvm.org/D89294
-
Nikita Popov authored
While promotion currently always has an AST available, it is only relevant for invalidation purposes in LoopPromoter, so we do not need to have it as a hard dependency.
-
Craig Topper authored
-
Nikita Popov authored
This adds an -enable-memcpyopt-memoryssa option that currently does nothing apart from requiring MSSA as a dependency. The tests are split to run both with the option disabled and enabled. I went with this rather than the separate directory DSE uses, as I found it convenient to have a direct side-by-side comparison of differences. Differential Revision: https://reviews.llvm.org/D89206
-
Alexander Belyaev authored
For some reason the variable `cumulativeSizeInBytes` in `getCumulativeSizeInBytes` was actually storing number of elements. I decided to fix it and refactor the function a bit. Differential Revision: https://reviews.llvm.org/D89336
-
Nikita Popov authored
moveUp() moves instructions, so we should move the corresponding memory accesses as well. We should also move the store instruction itself: Even though we'll end up removing it later, this gives us a correct MemoryDef to replace. The implementation is somewhat more complicated than it should be, because we also handle the case where P does not have a memory access due to a degnerate AA pipeline. Hopefully, the need for this will go away in the future, when the rest of the pass is based on MSSA. Differential Revision: https://reviews.llvm.org/D88778
-
Reid Kleckner authored
This reverts commit 5d74c435. The gtest tests appear to be flaky, and are failing in various places.
-
Denis Antrushin authored
Update few tests after statepoint format change (D87154). These tests exercise functionality not affected by the format change, so they left unchanged.
-
Roman Lebedev authored
As being pointed out by @efriedma in https://reviews.llvm.org/rGaaafe350bb65#inline-4883 of course we can't just call ptrtoint in sign-extending case and be done with it, because it will zero-extend. I'm not sure what i was thinking there. This is very much not an NFC, however looking at the user of BuildConstantFromSCEV() i'm not sure how to actually show that it results in a different constant expression.
-
Nikita Popov authored
If the memcpy operands are the same (which is allowed since D86815) then the memcpy is effectively a no-op and the partially overlapping memset is not dead. Differential Revision: https://reviews.llvm.org/D89192
-
LLVM GN Syncbot authored
-
LLVM GN Syncbot authored
-
Nikita Popov authored
MemCpyOpt can shorten a memset if it is later partially overwritten by a memcpy. It checks that the destination is not read in between, but we also need to make sure that the destination cannot be observed via unwinding. Differential Revision: https://reviews.llvm.org/D89190
-
Artem Dergachev authored
This reverts commit fd4b3f12.
-
Artem Dergachev authored
This reverts commit b76dc111.
-
Artem Dergachev authored
This reverts commit 44b7cf29.
-
Scott Linder authored
Add some minimal documentation for DILabel, originally introduced in D45024. Update the name and semantics of the `variables:` field in the documentation for `DISubprogram`; the field is now called `retainedNodes:` and is a heterogeneous list of `DILocalVariable` and `DILabel`. Reviewed By: aprantl Differential Revision: https://reviews.llvm.org/D89082
-
Ahsan Saghir authored
This patch adds support for assemble disassemble intrinsics for MMA. Reviewed By: bsaleil, #powerpc Differential Revision: https://reviews.llvm.org/D88739
-