Changes

Summary

  1. [gn build] Port 36080434a885 (details)
  2. [libc++] Add documentation for reproducing CI issues locally (details)
  3. [extract_symbols.py] Filter out more symbols for MSVC (details)
  4. [Support] Remove findFirstSet and findLastSet (details)
  5. [RISCV] Add MC support of RISCV Zcb Extension (details)
  6. Reland: [llvm-cov] Look up object files using debuginfod (details)
  7. [LinkerWrapper] Fix `-Bsymbolic` being sent to the compiler and not the linker (details)
  8. [OpenMP][OMPIRBuilder]Move SIMD alignment calculation to LLVM Frontend (details)
  9. [SYCL] Fix test to conform to SYCL2020 (details)
  10. [mlir][Linalg] Adding a greedy packing transform dialect op. (details)
  11. [flang] Fixed uninitialized std::unique_ptr dereference. (details)
  12. [flang] Fixed restrictions checking for OpenACC loop-associated constructs. (details)
  13. [bazel] Add missing dependency after 55cf0de35e (details)
  14. [test][lldb-vscode] Fix unclean shutdown in test_terminate_commands (details)
  15. test-release.sh: Use parallel xz for packaging the binaries (details)
Commit f7d8a432c84e390f333b554c52cd2a518c6da5d0 by llvmgnsyncbot
[gn build] Port 36080434a885
The file was modifiedllvm/utils/gn/secondary/libcxx/include/BUILD.gn (diff)
Commit 051bcd4f310bbf97781b9ccc95ae2754224a75b2 by Louis Dionne
[libc++] Add documentation for reproducing CI issues locally

Differential Revision: https://reviews.llvm.org/D142566
The file was modifiedlibcxx/utils/ci/run-buildbot (diff)
The file was modifiedlibcxx/docs/TestingLibcxx.rst (diff)
Commit 1b9fbc81ff15f6ad5a0e7f29c486c6edd0bce94c by sylvestre
[extract_symbols.py] Filter out more symbols for MSVC

This strips out about 5k symbols.

Fixes https://github.com/llvm/llvm-project/issues/60109

Reviewed By: john.brawn

Differential Revision: https://reviews.llvm.org/D142431
The file was modifiedllvm/utils/extract_symbols.py (diff)
Commit 32ac9db7a5c8b8b63f3f3cf1849ec752a679a797 by kazu
[Support] Remove findFirstSet and findLastSet

This patch removes findFirstSet and findLastSet as there are no uses
left in LLVM.

I am not aware of any uses of findFirstSet and findLastSet in the
open-source world outside LLVM, so I am skipping the deprecation step.

Differential Revision: https://reviews.llvm.org/D142603
The file was modifiedllvm/unittests/Support/MathExtrasTest.cpp (diff)
The file was modifiedllvm/include/llvm/Support/MathExtras.h (diff)
Commit 42c36da9c99b84ca7bc843a27ff0da29f5bf8a74 by craig.topper
[RISCV] Add MC support of RISCV Zcb Extension

This patch add the instructions of Zcb extension.

Instructions in zcb extensions shorten part of bit manipulation instructions.

Co-authored-by: Craig Topper <craig.topper@sifive.com>

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D131141
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfo.td (diff)
The file was modifiedllvm/lib/Target/RISCV/RISCVFeatures.td (diff)
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrFormatsC.td (diff)
The file was addedllvm/test/MC/RISCV/rv64zcb-valid.s
The file was modifiedllvm/test/CodeGen/RISCV/attributes.ll (diff)
The file was modifiedllvm/test/MC/RISCV/attribute-arch.s (diff)
The file was addedllvm/test/MC/RISCV/rv32zcb-valid.s
The file was modifiedllvm/lib/Support/RISCVISAInfo.cpp (diff)
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrFormats.td (diff)
The file was modifiedclang/test/Preprocessor/riscv-target-features.c (diff)
The file was modifiedllvm/docs/ReleaseNotes.rst (diff)
The file was addedllvm/lib/Target/RISCV/RISCVInstrInfoZc.td
The file was modifiedllvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h (diff)
The file was addedllvm/test/MC/RISCV/rv32zcb-invalid.s
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfo.cpp (diff)
The file was modifiedllvm/docs/RISCVUsage.rst (diff)
The file was modifiedllvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp (diff)
Commit a3b0dde4edb93248f74d86c63b0ae108854004e6 by dthorn
Reland: [llvm-cov] Look up object files using debuginfod

Reviewed By: gulfem

Differential Revision: https://reviews.llvm.org/D136702
The file was modifiedllvm/lib/Debuginfod/Debuginfod.cpp (diff)
The file was modifiedcompiler-rt/test/profile/Linux/lit.local.cfg.py (diff)
The file was modifiedllvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp (diff)
The file was modifiedllvm/cmake/modules/LLVMConfig.cmake.in (diff)
The file was modifiedcompiler-rt/test/profile/lit.site.cfg.py.in (diff)
The file was addedcompiler-rt/test/profile/Linux/binary-id-debuginfod.c
The file was modifiedllvm/docs/CommandGuide/llvm-cov.rst (diff)
The file was modifiedcompiler-rt/test/profile/CMakeLists.txt (diff)
The file was addedcompiler-rt/test/profile/Linux/binary-id-lookup.c
The file was modifiedllvm/tools/llvm-cov/CodeCoverage.cpp (diff)
The file was modifiedllvm/tools/llvm-symbolizer/llvm-symbolizer.cpp (diff)
The file was modifiedllvm/lib/ProfileData/Coverage/CoverageMapping.cpp (diff)
The file was modifiedllvm/include/llvm/ProfileData/Coverage/CoverageMappingReader.h (diff)
The file was modifiedllvm/tools/llvm-cov/CMakeLists.txt (diff)
The file was modifiedllvm/include/llvm/Debuginfod/Debuginfod.h (diff)
The file was modifiedllvm/include/llvm/ProfileData/Coverage/CoverageMapping.h (diff)
The file was modifiedllvm/tools/llvm-objdump/llvm-objdump.cpp (diff)
Commit f9839876574fe97fdcdf104fbb1c9ba7fd4f9433 by jhuber6
[LinkerWrapper] Fix `-Bsymbolic` being sent to the compiler and not the linker

Summary:
Clang doesn't warn on `-B` options passed to it. This one is not
forwarded to the linker which results in some tests failing when
offloading to x86_64 with the `bfd` linker.
The file was modifiedclang/test/Driver/linker-wrapper.c (diff)
The file was modifiedclang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp (diff)
Commit ca446037af019d1aa01b1352a30a18df33038359 by dominik.adamski
[OpenMP][OMPIRBuilder]Move SIMD alignment calculation to LLVM Frontend

Currently default simd alignment is defined by Clang specific TargetInfo class.
This class cannot be reused for LLVM Flang. That's why default simd alignment
calculation has been moved to OMPIRBuilder which is common for Flang and Clang.

Previous attempt: https://reviews.llvm.org/D138496 was wrong because
the default alignment depended on the number of built LLVM targets.

If we wanted to calculate the default alignment for PPC and we hadn't specified
PPC LLVM target to build, then we would get 0 as the alignment because
OMPIRBuilder couldn't create PPCTargetMachine object and it returned 0 as
the default value.

If PPC LLVM target had been built earlier, then OMPIRBuilder could have created
PPCTargetMachine object and it would have returned 128.

Differential Revision: https://reviews.llvm.org/D141910

Reviewed By: jdoerfert
The file was modifiedclang/include/clang/Basic/TargetInfo.h (diff)
The file was modifiedclang/lib/Basic/Targets/PPC.h (diff)
The file was modifiedclang/lib/Basic/TargetInfo.cpp (diff)
The file was modifiedclang/lib/Basic/Targets/WebAssembly.h (diff)
The file was modifiedclang/lib/Basic/Targets/X86.cpp (diff)
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp (diff)
The file was modifiedclang/lib/AST/ASTContext.cpp (diff)
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h (diff)
The file was modifiedllvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp (diff)
Commit c10615e4a94fc8dec65a48a6eb8f7efccc3fb1fc by elizabeth.andrews
[SYCL] Fix test to conform to SYCL2020
The file was modifiedclang/test/SemaSYCL/bf16.cpp (diff)
Commit 55cf0de35efd6cb81d6a21fee35186f6fb6864c2 by nicolas.vasilache
[mlir][Linalg] Adding a greedy packing transform dialect op.

This PR adds a `pack_greedily` transform operation that infers the packing for gemm
subcomputations embedded within in any LinalgOp and packs accordingly.
A normalization step guarantees that we get the innermost op dimensions in one of `8`
possible `(m, n, k)` orders, specified as a parameter, from which we can emit all
packed forms.

The current implementation takes an arbitrary LinalgOp and tries to pack it along
the specified dimensions with specified sizes and inner dim permutation.

This achieves a new level of normalization and generalization for any `n-D`
LinalgOp that contains a gemm embedded within it:
we will always see a predictable packed form for any of these ops.

Differential Revision: https://reviews.llvm.org/D142661
The file was modifiedmlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp (diff)
The file was addedmlir/test/Dialect/Linalg/transform-pack-greedily.mlir
The file was modifiedmlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td (diff)
Commit e054e0da9fd7055142188036ee713e8c0697324b by szakharin
[flang] Fixed uninitialized std::unique_ptr dereference.

This fixes unittest failures reported in D142279:
  flang-Unit :: Frontend/./FlangFrontendTests/5/7
  flang-Unit :: Frontend/./FlangFrontendTests/6/7
The file was modifiedflang/lib/Frontend/FrontendActions.cpp (diff)
Commit 02445263e2f533573a935c1bd502d848bbe6bb27 by szakharin
[flang] Fixed restrictions checking for OpenACC loop-associated constructs.

CheckDoConcurrentClauseRestriction and CheckTileClauseRestriction expect
that the construct has associated DoConstruct, while it is not set
when the do-loop has no loop control. The change is to skip the clauses
checks, when the do-loop does not have the loop control.

An alternative fix would be to associate the DoConstruct even when
the do-loop has no loop control and let Check*ClauseRestriction run their
checks, but I am not sure if associating invalid DoConstruct is a good idea.

This fixes failure in Semantics/OpenACC/acc-canonicalization-validity.f90
reported in D142279.

Reviewed By: clementval

Differential Revision: https://reviews.llvm.org/D142652
The file was modifiedflang/lib/Semantics/canonicalize-acc.cpp (diff)
Commit f617c6cc91c0de5604c9df1fe2c70100aed963ac by benny.kra
[bazel] Add missing dependency after 55cf0de35e
The file was modifiedutils/bazel/llvm-project-overlay/mlir/BUILD.bazel (diff)
Commit dc682ed590f73f7b7417ecf66d18b303ab957c62 by rupprecht
[test][lldb-vscode] Fix unclean shutdown in test_terminate_commands

This test manually sends `terminateCommands` to shutdown, but then the test attempts another `terminateCommands` request in test tear down, which fails since it's already torn down. This error is ignored in LLDB's old fork of unittest2, but will be reported as a test failure in `unittest` from the Python standard library. Use `disconnectAutomatically` to avoid terminating twice.
The file was modifiedlldb/test/API/tools/lldb-vscode/launch/TestVSCode_launch.py (diff)
Commit 009048810ac635a7ad6c5f788d537172418b6054 by tstellar
test-release.sh: Use parallel xz for packaging the binaries

Reviewed By: amyk, dim, hans

Differential Revision: https://reviews.llvm.org/D142417
The file was modifiedllvm/utils/release/test-release.sh (diff)