Commit
d4f2fef7464eb2b8c2126c5b733eeb76ed9820f6
by paul[TableGen] Remove unused declaration that caused build failures.
|
 | llvm/lib/TableGen/TGParser.cpp |
Commit
84dc9b451bfd62474f44dd1af0e4955a0110d523
by ezhulenev[mlir:JitRunner] Use custom shared library init/destroy functions if available
Use custom mlir runner init/destroy functions to safely init and destroy shared libraries loaded by the JitRunner.
Reviewed By: mehdi_amini
Differential Revision: https://reviews.llvm.org/D94270
|
 | mlir/lib/ExecutionEngine/JitRunner.cpp |
 | mlir/lib/ExecutionEngine/CMakeLists.txt |
 | mlir/lib/ExecutionEngine/AsyncRuntime.cpp |
Commit
a36a2864c0d4b89b66e0cdfde0f82d569a293e10
by david.green[ARM][LV] Additional loop invariant reduction test. NFC
|
 | llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-types.ll |
Commit
80dee7965dffdfb866afa9d74f3a4a97453708b2
by llvm-dev[X86][SSE] Fold unpack(hop(),hop()) -> permute(hop())
UNPCKL/UNPCKH only uses one op from each hop, so we can merge the hops and then permute the result.
|
 | llvm/test/CodeGen/X86/horizontal-shuffle-2.ll |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
Commit
740950cf1cda4e5ccecf3781b7b64c9a9a72b168
by ezhulenevRevert "[mlir:JitRunner] Use custom shared library init/destroy functions if available"
This reverts commit 84dc9b451bfd62474f44dd1af0e4955a0110d523.
Fix Windows breakage: http://lab.llvm.org:8011/#/builders/13/builds/3658/steps/6/logs/stdio
Differential Revision: https://reviews.llvm.org/D94309
|
 | mlir/lib/ExecutionEngine/CMakeLists.txt |
 | mlir/lib/ExecutionEngine/JitRunner.cpp |
 | mlir/lib/ExecutionEngine/AsyncRuntime.cpp |
Commit
d4af86581e80ef0f7a6f4a4fff1c97260a726e71
by adamcz[clangd] Fix type printing in the presence of qualifiers
When printing QualType with qualifiers like "const", or pointing to an elaborated type, we would print garbage like: std::const std::vector<int>& with the initial std:: being calculated correctly, but inserted in the wrong place and the second std:: not removed (due to elaborated type).
This affected, among others, ExtractFunction and ExpandAuto tweaks.
This change introduces a new callback to PrintingPolicy, which allows us to influence the printing of namespace qualifiers. In the future, the same callback can be used to improve handling of "using namespace" directives as well.
Fixes: https://github.com/clangd/clangd/issues/640 (ExtractFunction) https://github.com/clangd/clangd/issues/264 (ExpandAuto) First point of https://github.com/clangd/clangd/issues/524
Differential Revision: https://reviews.llvm.org/D94259
|
 | clang-tools-extra/clangd/AST.cpp |
 | clang-tools-extra/clangd/unittests/tweaks/ExtractFunctionTests.cpp |
 | clang-tools-extra/clangd/unittests/tweaks/ExpandAutoTypeTests.cpp |
 | clang/lib/AST/TypePrinter.cpp |
 | clang/include/clang/AST/PrettyPrinter.h |
Commit
e185b1dd7b34c352167823295281f1bf1df09976
by david.green[ConstProp] Constant propagation for get.active.lane.mask instrinsics
Similar to the Arm VCTP intrinsics, if the operands of an active.lane.mask are both known, the constant lane mask can be calculated. This can come up after unrolling the loops.
Differential Revision: https://reviews.llvm.org/D94103
|
 | llvm/test/Transforms/InstSimplify/ConstProp/active-lane-mask.ll |
 | llvm/lib/Analysis/ConstantFolding.cpp |
Commit
2e1bb7940a4ddc847cebd25092d10f40866a7fad
by adamcz[clangd] Add missing "override" to fix the build.
Follow-up to d4af86581e80ef0f7a6f4a4fff1c97260a726e71
Differential Revision: https://reviews.llvm.org/D94314
|
 | clang-tools-extra/clangd/AST.cpp |
Commit
dd5165a920f66268ee509af31fe84efedacdfbf9
by zinenko[mlir] replace LLVM dialect float types with built-ins
Continue the convergence between LLVM dialect and built-in types by replacing the bfloat, half, float and double LLVM dialect types with their built-in counterparts. At the API level, this is a direct replacement. At the syntax level, we change the keywords to `bf16`, `f16`, `f32` and `f64`, respectively, to be compatible with the built-in type syntax. The old keywords can still be parsed but produce a deprecation warning and will be eventually removed.
Depends On D94178
Reviewed By: mehdi_amini, silvas, antiagainst
Differential Revision: https://reviews.llvm.org/D94179
|
 | mlir/test/Target/avx512.mlir |
 | mlir/include/mlir/Conversion/StandardToLLVM/ConvertStandardToLLVM.h |
 | mlir/test/Target/llvmir-invalid.mlir |
 | mlir/test/Dialect/LLVMIR/types.mlir |
 | mlir/lib/Conversion/AsyncToLLVM/AsyncToLLVM.cpp |
 | mlir/lib/Dialect/LLVMIR/IR/LLVMTypeSyntax.cpp |
 | mlir/include/mlir/Dialect/LLVMIR/LLVMTypes.h |
 | mlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp |
 | mlir/test/Conversion/SPIRVToLLVM/cast-ops-to-llvm.mlir |
 | mlir/lib/Conversion/GPUToVulkan/ConvertLaunchFuncToVulkanCalls.cpp |
 | mlir/test/Target/rocdl.mlir |
 | mlir/docs/Dialects/LLVM.md |
 | mlir/test/Dialect/LLVMIR/global.mlir |
 | mlir/test/Conversion/GPUCommon/lower-launch-func-to-gpu-runtime-calls.mlir |
 | mlir/test/Conversion/SPIRVToLLVM/glsl-ops-to-llvm.mlir |
 | mlir/test/Conversion/GPUToCUDA/lower-nvvm-kernel-to-cubin.mlir |
 | mlir/test/Conversion/StandardToLLVM/calling-convention.mlir |
 | mlir/test/Conversion/StandardToLLVM/standard-to-llvm.mlir |
 | mlir/docs/Dialects/Linalg.md |
 | mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp |
 | mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir |
 | mlir/test/Conversion/SPIRVToLLVM/constant-op-to-llvm.mlir |
 | mlir/integration_test/Dialect/LLVMIR/CPU/test-vector-reductions-fp.mlir |
 | mlir/lib/ExecutionEngine/JitRunner.cpp |
 | mlir/test/Conversion/SPIRVToLLVM/misc-ops-to-llvm.mlir |
 | mlir/test/Conversion/StandardToLLVM/convert-to-llvmir.mlir |
 | mlir/test/Dialect/LLVMIR/invalid.mlir |
 | mlir/test/mlir-cpu-runner/simple.mlir |
 | mlir/test/Dialect/LLVMIR/roundtrip.mlir |
 | mlir/test/Dialect/LLVMIR/nvvm.mlir |
 | mlir/include/mlir/Dialect/LLVMIR/LLVMOpBase.td |
 | mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp |
 | mlir/test/Dialect/LLVMIR/rocdl.mlir |
 | mlir/test/Conversion/VectorToROCDL/vector-to-rocdl.mlir |
 | mlir/test/Dialect/LLVMIR/func.mlir |
 | mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir |
 | mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir |
 | mlir/test/Target/llvmir.mlir |
 | mlir/docs/SPIRVToLLVMDialectConversion.md |
 | mlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp |
 | mlir/test/Conversion/SPIRVToLLVM/arithmetic-ops-to-llvm.mlir |
 | mlir/lib/Target/LLVMIR/TypeTranslation.cpp |
 | mlir/test/Dialect/LLVMIR/types-invalid.mlir |
 | mlir/test/Conversion/SPIRVToLLVM/memory-ops-to-llvm.mlir |
 | mlir/test/Target/llvmir-types.mlir |
 | mlir/test/Target/import.ll |
 | mlir/test/Conversion/SPIRVToLLVM/comparison-ops-to-llvm.mlir |
 | mlir/test/Conversion/StandardToLLVM/convert-funcs.mlir |
 | mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp |
 | mlir/test/Dialect/GPU/invalid.mlir |
 | mlir/test/Conversion/GPUToROCm/lower-rocdl-kernel-to-hsaco.mlir |
 | mlir/test/Conversion/StandardToLLVM/convert-static-memref-ops.mlir |
 | mlir/docs/Dialects/Vector.md |
 | mlir/test/Conversion/VectorToLLVM/vector-mask-to-llvm.mlir |
 | mlir/test/Target/llvmir-intrinsics.mlir |
 | mlir/test/Conversion/GPUCommon/memory-attrbution.mlir |
 | mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp |
 | mlir/docs/Tutorials/Toy/Ch-6.md |
 | mlir/test/Conversion/AsyncToLLVM/convert-to-llvm.mlir |
 | mlir/test/Dialect/LLVMIR/dialect-cast.mlir |
 | mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td |
 | mlir/lib/Conversion/GPUCommon/OpToFuncCallLowering.h |
 | mlir/test/Dialect/Linalg/llvm.mlir |
 | mlir/test/Target/openmp-llvm.mlir |
 | mlir/test/Conversion/SPIRVToLLVM/spirv-types-to-llvm.mlir |
 | mlir/docs/LLVMDialectMemRefConvention.md |
 | mlir/test/Conversion/VectorToLLVM/vector-reduction-to-llvm.mlir |
 | mlir/test/Target/nvvmir.mlir |
 | mlir/test/Conversion/GPUToVulkan/invoke-vulkan.mlir |
 | mlir/test/Conversion/StandardToLLVM/convert-dynamic-memref-ops.mlir |
 | mlir/test/Conversion/SPIRVToLLVM/func-ops-to-llvm.mlir |
 | mlir/docs/ConversionToLLVMDialect.md |
 | mlir/test/Dialect/GPU/multiple-all-reduce.mlir |
Commit
466df1718e41fe2fca6ce6bd98c01b18f42c05e4
by arthur.j.odwyer[libc++] Update generate_feature_test_macro_components.py to match SD-6.
It's still a little confusing because in many cases C++17 and C++20 have different values, and libc++ implements the C++17 behavior but not the C++20 behavior; 'unimplemented' can't represent that scenario. Ultimately we probably ought to completely redesign the script to be in terms of paper numbers, rather than language revisions, and make it generate the CSV files like "Cxx2aStatusPaperStatus.csv" as well.
Most newly added macros are unimplemented. I've marked a few as implemented, though, based on my reading of the code; for example I was pretty sure `__cpp_lib_latch` is implemented since we have `<latch>`.
Differential Revision: https://reviews.llvm.org/D93830
|
 | libcxx/test/std/language.support/support.limits/support.limits.general/complex.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/version.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/barrier.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/compare.version.pass.cpp |
 | libcxx/utils/generate_feature_test_macro_components.py |
 | libcxx/test/std/language.support/support.limits/support.limits.general/bit.version.pass.cpp |
 | libcxx/include/version |
 | libcxx/test/std/language.support/support.limits/support.limits.general/type_traits.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/latch.version.pass.cpp |
 | libcxx/docs/FeatureTestMacroTable.rst |
 | libcxx/test/std/language.support/support.limits/support.limits.general/string_view.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/semaphore.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/thread.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/cmath.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/execution.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/iterator.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/memory.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/concepts.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/vector.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/functional.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/string.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.pass.cpp |
Commit
cb6d53ccdc7288f1bb62b0d50055545acfb59f77
by Jonas Devlieghere[lldb] Bump the required SWIG version to 3
Bump the required SWIG version to 3. If my memory serves me well we last bumped the required SWIG version to 2 for Python 3. At that time SWIG 3 had already been around for a while so everyone I know was already using that.
It appears that SWIG 3 is the only version that officially supports C++11 which we're using in the typemap. SWIG 3 was released in 2014 so I think it's reasonable to make that the minimum required version.
https://bugs.llvm.org/show_bug.cgi?id=48685
Differential revision: https://reviews.llvm.org/D94244
|
 | lldb/cmake/modules/FindLuaAndSwig.cmake |
 | lldb/cmake/modules/FindPythonAndSwig.cmake |
 | lldb/docs/resources/build.rst |
Commit
9386483b7142bbfe64b1a4d2f91b6712c1357c24
by Ganesh.Gopalasubramanian[X86] Add TLBSYNC, INVLPGB and SNP instructions
Differential Revision: https://reviews.llvm.org/D94134
|
 | llvm/lib/Target/X86/X86InstrSNP.td |
 | llvm/test/MC/X86/x86-32.s |
 | llvm/test/MC/X86/x86-64.s |
 | llvm/test/MC/Disassembler/X86/x86-64.txt |
 | llvm/test/MC/X86/SNP-32.s |
 | llvm/test/MC/Disassembler/X86/x86-32.txt |
 | llvm/lib/Target/X86/X86InstrInfo.td |
 | llvm/test/MC/X86/x86-32-coverage.s |
 | llvm/test/MC/X86/SNP-64.s |
Commit
c493e9216bd1700577b209a0e2d290145653e40d
by flo[VPlan] Move reduction start value creation to widenPHIRecipe.
This was suggested to prepare for D93975.
By moving the start value creation to widenPHInstruction, we set the stage to manage the start value directly in VPWidenPHIRecipe, which be used subsequently to set the 'resume' value for reductions during epilogue vectorization.
It also moves RdxDesc to the recipe, so we do not have to rely on Legal to look it up later.
Reviewed By: gilr
Differential Revision: https://reviews.llvm.org/D94175
|
 | llvm/lib/Transforms/Vectorize/VPlan.h |
 | llvm/lib/Transforms/Vectorize/LoopVectorize.cpp |
Commit
913c430403b52b9336ed93fabbac363a3e18536a
by raulRevert "[CMake] Don't enable BUILD_WITH_INSTALL_RPATH when using custom build rpath"
This reverts commit 0ebc1fb29f278db0665423f15c53e6ee9601dddb.
The behaviour should have been the same as before unless specifying CMAKE_BUILD_RPATH, which was previously broken. However, this seems to have broken builds for some people that don't specify it. Reverting until I can investigate.
Differential Revision: https://reviews.llvm.org/D94319
|
 | llvm/cmake/modules/AddLLVM.cmake |
Commit
95729f95d803c8e8f4ca3e6767404ec2c0492d53
by marek.kurdej[libc++] Add basic support for -std=c++2b.
* Add feature test macros. * Add buildbot configuration generic-cxx2b that uses clang-tot.
Reviewed By: ldionne, #libc
Differential Revision: https://reviews.llvm.org/D94227
|
 | libcxx/docs/TestingLibcxx.rst |
 | libcxx/test/std/language.support/support.limits/support.limits.general/thread.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/string.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/semaphore.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/compare.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/type_traits.version.pass.cpp |
 | libcxx/cmake/caches/Generic-cxx2b.cmake |
 | libcxx/docs/FeatureTestMacroTable.rst |
 | libcxx/test/std/language.support/support.limits/support.limits.general/iomanip.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/forward_list.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/cmath.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/barrier.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/exception.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/optional.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/scoped_allocator.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/functional.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/locale.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/ostream.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/limits.version.pass.cpp |
 | libcxx/utils/ci/buildkite-pipeline.yml |
 | libcxx/test/std/language.support/support.limits/support.limits.general/latch.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/shared_mutex.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/version.version.pass.cpp |
 | libcxx/utils/ci/run-buildbot |
 | libcxx/test/std/language.support/support.limits/support.limits.general/istream.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/execution.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/numeric.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.pass.cpp |
 | libcxx/utils/libcxx/test/params.py |
 | libcxx/test/std/language.support/support.limits/support.limits.general/complex.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/variant.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/numbers.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/map.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/atomic.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/new.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/memory.version.pass.cpp |
 | libcxx/utils/generate_feature_test_macro_components.py |
 | libcxx/test/std/language.support/support.limits/support.limits.general/deque.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/regex.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/any.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/mutex.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/set.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/span.version.pass.cpp |
 | libcxx/include/version |
 | libcxx/test/std/language.support/support.limits/support.limits.general/filesystem.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/cstddef.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/vector.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/array.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/unordered_map.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/chrono.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/unordered_set.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/bit.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/string_view.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/concepts.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/list.version.pass.cpp |
 | libcxx/test/std/language.support/support.limits/support.limits.general/iterator.version.pass.cpp |
Commit
955dd7b7f3f6df79f573508ffb567f3923e892f7
by Louis Dionne[libc++] LWG2070: Use Allocator construction for objects created with allocate_shared
This patch updates `allocate_shared` to call `allocator_traits::construct` when creating the object held inside the shared_pointer, and `allocator_traits::destroy` when destroying it. This resolves the part of P0674R1 that was originally filed as LWG2070.
This change is landed separately from the rest of P0674R1 because it is incredibly tricky from an ABI perspective.
This is the reason why this change is so tricky is that we previously used EBO in a compressed pair to store both the allocator and the object type stored in the `shared_ptr`. However, starting in C++20, P0674 requires us to use Allocator construction for initializing the object type. That requirement rules out the use of the EBO for the object type, since using the EBO implies that the base will be initialized when the control block is initialized (and hence we can't do it through Allocator construction). Hence, supporting P0674 requires changing how we store the object type inside the control block, which we do while being ABI compatible by using some trickery with a properly aligned char buffer.
Fixes https://llvm.org/PR41900 Supersedes https://llvm.org/D62760
Differential Revision: https://reviews.llvm.org/D91201
|
 | libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.create/allocate_shared_construct.pass.cpp |
 | libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.create/allocate_shared.pass.cpp |
 | libcxx/include/memory |
 | libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/libcxx.control_block_layout.pass.cpp |
Commit
311b247c9fb58ee476184a7eb8044b8f54f95035
by Jonas Devlieghere[lldb] Remove stale LLDB-Info.plist
Remove the stale LLDB-Info.plist which was only used by TestHelp.py. The latter would try to parse the version number from the plist and use that to verify the version in the help output. Of course this never matched so it would fall back to matching any arbitrary version.
This patch does *not* change the real LLDB-Info.plist.in file which is used for the LLDB Framework.
|
 | lldb/resources/LLDB-Info.plist |
 | lldb/test/API/commands/help/TestHelp.py |
Commit
ae0d1d2e5cd3a99da0b2eefc27c8f94b95f03cc6
by psteinfeld[flang] Fix bogus message on internal subprogram with alternate return
Internal subprograms have explicit interfaces. If an internal subprogram has an alternate return, we check its explicit interface. But we were not putting the label values of alternate returns into the actual argument.
I fixed this by changing the definition of actual arguments to be able to contain a common::Label and putting the label for an alternate return into the actual argument.
I also verified that we were already doing all of the semantic checking required for alternate returns and removed a "TODO" for this.
I also added the test altreturn06.f90.
Differential Revision: https://reviews.llvm.org/D94017
|
 | flang/lib/Evaluate/formatting.cpp |
 | flang/include/flang/Common/Fortran.h |
 | flang/lib/Evaluate/call.cpp |
 | flang/include/flang/Parser/parse-tree.h |
 | flang/lib/Semantics/check-call.cpp |
 | flang/lib/Semantics/expression.cpp |
 | flang/test/Semantics/altreturn06.f90 |
 | flang/include/flang/Evaluate/call.h |
Commit
024af42c601063e5f831b3049612321b5629e00a
by david.green[ARM] Custom lower i1 vector truncates
The ISel patterns we have for truncating to i1's under MVE do not seem to be correct. Instead custom lower to icmp(ne, and(x, 1), 0).
Differential Revision: https://reviews.llvm.org/D94226
|
 | llvm/lib/Target/ARM/ARMInstrMVE.td |
 | llvm/lib/Target/ARM/ARMISelLowering.cpp |
 | llvm/test/CodeGen/Thumb2/mve-pred-ext.ll |
Commit
fe50b7363a1fbf974107d75a7d0a4be8b9481b56
by paul[TableGen] Fix use of *CurRec when CurRec is null.
I cannot build with the undefined sanitizer on Visual Studio.
|
 | llvm/lib/TableGen/TGParser.cpp |
Commit
d9ce31ae7d1fc68de0ea1535fd25ef84e69aeb07
by raulRe-land "[CMake] Don't enable BUILD_WITH_INSTALL_RPATH when using custom build rpath"
Reverted check for empty CMAKE_BUILD_RPATH fixed.
When `BUILD_WITH_INSTALL_RPATH` is enabled it prevents using a custom rpath only for the build tree as the install rpath will be used. This makes it impossible to run a runtimes build when compiling with Clang and wanting the installed rpath to be empty (i.e. `-DCMAKE_BUILD_RPATH="<some path>" -DCMAKE_SKIP_INSTALL_RPATH=ON`).
Disable `BUILD_WITH_INSTALL_RPATH` when `CMAKE_BUILD_RPATH` is non-empty to allow for such build scenarios.
Differential Revision: https://reviews.llvm.org/D94322
|
 | llvm/cmake/modules/AddLLVM.cmake |
Commit
ec13f6c3e56952c94909a36a590c679a6a57a046
by ravishankarm[mlir][Linalg] Add verification checks to disallow illegal reshape ops.
The existing verification of reshape ops in linalg (linalg.reshape and linalg.tensor_reshape) allows specification of illegal ops, where - A dynamic dimension is expanded into multiple dynamic dimensions. This is ill-specified. - A static dimension is expanded into dynamic dimension or viceversa, - The product of extents of the static dimensions in the expanded type doesnt match the static dimension of the collapsed type. Making all of these illegal. This also implies that some pessimization in canonicalization due to incomplete semantics of the operation can be dropped.
Differential Revision: https://reviews.llvm.org/D93724
|
 | mlir/test/Dialect/Linalg/invalid.mlir |
 | mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp |
 | mlir/test/Dialect/Linalg/canonicalize.mlir |
 | mlir/test/Dialect/Linalg/roundtrip.mlir |
Commit
bf401256edd00e921a5d3a0bf4cf6ee66ae51cd6
by Vedant Kumar[Signal] Re-raise SIGPIPE if the handler is uninstalled
Instead of falling through to RunSignalHandlers after the SIGPIPE handler is uninstalled and we get a SIGPIPE, re-raise the signal, just like we do for other IntSigs.
This was discussed and informally OK'd here:
https://reviews.llvm.org/rG9a3f892d018238dce5181e458905311db8e682f5#856804
|
 | llvm/lib/Support/Unix/Signals.inc |
Commit
840a2c978374ccc74a0e0b2576c1027fdb609a59
by raul[CMake] Fix incorrect rpath for tests if LLVM_LOCAL_RPATH isn't set
d9ce31ae7d (D94322) removed the check because I thought it was dead due to checking the existance of a variable (which always existed).
This causes LLDB tests to fail as they set NO_INSTALL_RPATH because they're never meant to be installed, but we still would end up using the install rpath.
Add the check back and make it explicitly check for an empty value to make the purpose clearer and avoid implicit test for a false/true value.
Differential Revision: https://reviews.llvm.org/D94326
|
 | llvm/cmake/modules/AddLLVM.cmake |
Commit
0875a9da2a387ce8e6aa28db9db933d605c3e6cc
by craig.topper[RISCV] Cleanup a few section comments in RISCVInstrInfoVPseudos.td. NFC
|
 | llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td |