[all-commits] [llvm/llvm-project] 8136ac: [Flang] Define c_int_fast16_t and c_int_fast32_t f...

darkbuck via All-commits all-commits at lists.llvm.org
Thu Apr 11 09:40:10 PDT 2024


  Branch: refs/heads/users/darkbuck/spr/globalisel-handle-more-commutable-instructions-in-commute_constant_to_rhs
  Home:   https://github.com/llvm/llvm-project
  Commit: 8136ac1c42dcfdd070f0bcba0f06424093df22db
      https://github.com/llvm/llvm-project/commit/8136ac1c42dcfdd070f0bcba0f06424093df22db
  Author: Daniel Chen <cdchen at ca.ibm.com>
  Date:   2024-04-10 (Wed, 10 Apr 2024)

  Changed paths:
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/module/iso_c_binding.f90
    A flang/test/Driver/predefined-macros-powerpc2.f90

  Log Message:
  -----------
  [Flang] Define c_int_fast16_t and c_int_fast32_t for PowerPC. (#88292)

On Linux, PowerPC defines `int_fast16_t` and `int_fast32_t` as `long`.
Need to update the corresponding type, `c_int_fast16_t` and
`c_int_fast32_t` in `iso_c_binding` module so they are interoparable.


  Commit: acb7ddc5cf2f23416f65dcdc6c7fd08850ad961d
      https://github.com/llvm/llvm-project/commit/acb7ddc5cf2f23416f65dcdc6c7fd08850ad961d
  Author: Matthias Braun <matze at braunis.de>
  Date:   2024-04-10 (Wed, 10 Apr 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    M llvm/test/CodeGen/WebAssembly/tls-general-dynamic.ll
    M llvm/test/CodeGen/WebAssembly/tls-local-exec.ll

  Log Message:
  -----------
  [WebAssembly] Remove threadlocal.address when disabling TLS (#88209)

Remove `llvm.threadlocal.address` intrinsic usage when disabling TLS.
This fixes errors revealed by the stricter IR verification introduced in
PR #87841.


  Commit: d927d1867fa760836538beef2c4531c1a0b04e24
      https://github.com/llvm/llvm-project/commit/d927d1867fa760836538beef2c4531c1a0b04e24
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-04-10 (Wed, 10 Apr 2024)

  Changed paths:
    M llvm/lib/IR/DiagnosticInfo.cpp
    M llvm/lib/Transforms/Instrumentation/LowerAllowCheckPass.cpp
    A llvm/test/Transforms/lower-builtin-allow-check-remarks.ll

  Log Message:
  -----------
  [UBSAN] Emit optimization remarks (#88304)


  Commit: 6ef4450705473e5cccb025219e8980999f456b71
      https://github.com/llvm/llvm-project/commit/6ef4450705473e5cccb025219e8980999f456b71
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M clang/lib/CodeGen/CGStmtOpenMP.cpp

  Log Message:
  -----------
  [clang] Fix -Wunused-function in CGStmtOpenMP.cpp (NFC)

llvm-project/clang/lib/CodeGen/CGStmtOpenMP.cpp:7959:13:
error: unused function 'emitTargetTeamsLoopCodegenStatus' [-Werror,-Wunused-function]
static void emitTargetTeamsLoopCodegenStatus(CodeGenFunction &CGF,
            ^
1 error generated.


  Commit: 19e516fbed809af094ce195a6a5baa2e1f30f3cd
      https://github.com/llvm/llvm-project/commit/19e516fbed809af094ce195a6a5baa2e1f30f3cd
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-04-10 (Wed, 10 Apr 2024)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 1fda1776e32b


  Commit: 402706668362fee8f9a9d29fb6d4628df4d4fc42
      https://github.com/llvm/llvm-project/commit/402706668362fee8f9a9d29fb6d4628df4d4fc42
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-04-10 (Wed, 10 Apr 2024)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 59e66c515a47


  Commit: 233edab8765686bd44611f9f7319d3ffbc12fbab
      https://github.com/llvm/llvm-project/commit/233edab8765686bd44611f9f7319d3ffbc12fbab
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-04-10 (Wed, 10 Apr 2024)

  Changed paths:
    M llvm/utils/gn/secondary/clang/unittests/AST/Interp/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 5d7d6ad663f8


  Commit: 9786a3b4cf9d050a6f87358e3295da3d32fade5c
      https://github.com/llvm/llvm-project/commit/9786a3b4cf9d050a6f87358e3295da3d32fade5c
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-04-10 (Wed, 10 Apr 2024)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/src/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 0a1317564a6b


  Commit: be10070f91b86a6f126d2451852242bfcb2cd366
      https://github.com/llvm/llvm-project/commit/be10070f91b86a6f126d2451852242bfcb2cd366
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-04-10 (Wed, 10 Apr 2024)

  Changed paths:
    M clang/lib/Driver/ToolChain.cpp
    M clang/test/Driver/arm-compiler-rt.c
    M clang/test/Driver/cl-link.c
    M clang/test/Driver/compiler-rt-unwind.c
    M clang/test/Driver/coverage-ld.c
    M clang/test/Driver/instrprof-ld.c
    M clang/test/Driver/linux-ld.c
    M clang/test/Driver/mingw-sanitizers.c
    M clang/test/Driver/msp430-toolchain.c
    M clang/test/Driver/print-libgcc-file-name-clangrt.c
    M clang/test/Driver/print-runtime-dir.c
    M clang/test/Driver/riscv32-toolchain-extra.c
    M clang/test/Driver/riscv32-toolchain.c
    M clang/test/Driver/riscv64-toolchain-extra.c
    M clang/test/Driver/riscv64-toolchain.c
    M clang/test/Driver/sanitizer-ld.c
    M clang/test/Driver/wasm-toolchain.c
    M clang/test/Driver/wasm-toolchain.cpp
    M clang/test/Driver/windows-cross.c
    M clang/test/Driver/zos-ld.c
    M flang/test/Driver/msvc-dependent-lib-flags.f90

  Log Message:
  -----------
  Revert "[Driver] Ensure ToolChain::LibraryPaths is not empty for non-Darwin"

This reverts commit ccdebbae4d77d3efc236af92c22941de5d437e01.

Causes test failures in the presence of Android runtime libraries in resource-dir.
See comments on https://github.com/llvm/llvm-project/pull/87866.


  Commit: fca51911d4668b3a6b79eb956327eb81fad3f40c
      https://github.com/llvm/llvm-project/commit/fca51911d4668b3a6b79eb956327eb81fad3f40c
  Author: Bill Wendling <5993918+bwendling at users.noreply.github.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclObjC.h
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/AST/ExternalASTSource.h
    M clang/include/clang/AST/NestedNameSpecifier.h
    M clang/include/clang/Analysis/SelectorExtras.h
    M clang/include/clang/Basic/IdentifierTable.h
    M clang/include/clang/Lex/ExternalPreprocessorSource.h
    M clang/include/clang/Lex/MacroInfo.h
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/CodeCompleteConsumer.h
    M clang/include/clang/Sema/DeclSpec.h
    M clang/include/clang/Sema/ParsedTemplate.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/lib/ARCMigrate/ObjCMT.cpp
    M clang/lib/ARCMigrate/TransAPIUses.cpp
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclObjC.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/NSAPI.cpp
    M clang/lib/AST/NestedNameSpecifier.cpp
    M clang/lib/AST/SelectorLocationsKind.cpp
    M clang/lib/AST/StmtPrinter.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/Analysis/ObjCNoReturn.cpp
    M clang/lib/Basic/IdentifierTable.cpp
    M clang/lib/CodeGen/CGBlocks.cpp
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGObjC.cpp
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
    M clang/lib/Lex/HeaderSearch.cpp
    M clang/lib/Lex/MacroInfo.cpp
    M clang/lib/Lex/PPLexerChange.cpp
    M clang/lib/Lex/PPMacroExpansion.cpp
    M clang/lib/Lex/Preprocessor.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseObjc.cpp
    M clang/lib/Parse/ParseTemplate.cpp
    M clang/lib/Sema/CodeCompleteConsumer.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaCodeComplete.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaDeclObjC.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaExprObjC.cpp
    M clang/lib/Sema/SemaObjCProperty.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaPseudoObject.cpp
    M clang/lib/Sema/SemaStmt.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Serialization/ASTCommon.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/StaticAnalyzer/Checkers/CheckObjCDealloc.cpp
    M clang/lib/StaticAnalyzer/Checkers/LocalizationChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCMissingSuperCallChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCSuperDeallocChecker.cpp
    M clang/tools/libclang/CIndexCodeCompletion.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ASTUtils.h
    M lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp

  Log Message:
  -----------
  [NFC][Clang] Improve const correctness for IdentifierInfo (#79365)

The IdentifierInfo isn't typically modified. Use 'const' wherever
possible.


  Commit: 51f1681424f1a8ccf1e3432d71c341e799597171
      https://github.com/llvm/llvm-project/commit/51f1681424f1a8ccf1e3432d71c341e799597171
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-04-10 (Wed, 10 Apr 2024)

  Changed paths:
    M clang/lib/Format/FormatToken.h
    M clang/lib/Format/UnwrappedLineFormatter.cpp
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/unittests/Format/BracesRemoverTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/FormatTestMacroExpansion.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp

  Log Message:
  -----------
  [clang-format] Don't merge a short block for SBS_Never (#88238)

Also fix unit tests.

Fixes #87484.


  Commit: 6b46166ef2612d2a58767447b3db8f0343afb552
      https://github.com/llvm/llvm-project/commit/6b46166ef2612d2a58767447b3db8f0343afb552
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/lib/Support/raw_socket_stream.cpp

  Log Message:
  -----------
  [llvm][NFC] Suppress `-Wunused-result` call to `write`

Commit 87e6f87fe7e343eb656e9b49d30cbb065c086651 adds a call to `::write()`, which may be annotated w/ `warn_unused_result`, leading to `-Wunused-result` failures.


  Commit: f4509cf284ced95f31dc7eb63144b4bc47899c43
      https://github.com/llvm/llvm-project/commit/f4509cf284ced95f31dc7eb63144b4bc47899c43
  Author: Freddy Ye <freddy.ye at intel.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
    M llvm/lib/Target/X86/X86InstrAsmAlias.td
    M llvm/lib/Target/X86/X86InstrCMovSetCC.td
    M llvm/lib/Target/X86/X86InstrControl.td
    M llvm/test/MC/Disassembler/X86/apx/evex-format.txt
    A llvm/test/MC/Disassembler/X86/apx/setcc.txt
    A llvm/test/MC/Disassembler/X86/apx/setzucc.txt
    M llvm/test/MC/X86/apx/evex-format-att.s
    M llvm/test/MC/X86/apx/evex-format-intel.s
    A llvm/test/MC/X86/apx/setcc-att.s
    A llvm/test/MC/X86/apx/setcc-intel.s
    A llvm/test/MC/X86/apx/setzucc-att.s
    A llvm/test/MC/X86/apx/setzucc-intel.s
    M llvm/test/TableGen/x86-fold-tables.inc
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp

  Log Message:
  -----------
  [X86][MC] Support enc/dec for SETZUCC and promoted SETCC. (#86473)

apx-spec: https://cdrdv2.intel.com/v1/dl/getContent/784266
apx-syntax-recommendation:
https://cdrdv2.intel.com/v1/dl/getContent/817241


  Commit: fd50151180498f0de4fe26ff21d3e3b8accc4de0
      https://github.com/llvm/llvm-project/commit/fd50151180498f0de4fe26ff21d3e3b8accc4de0
  Author: Jianjian Guan <jacquesguan at me.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/vsplats-fp.ll

  Log Message:
  -----------
  [RISCV] Only support SPLAT_VECTOR for Zvfhmin when also enable the scalar extension of half fp (#88275)


  Commit: 999b9e6ddb4324600a46c8f7006acec81fe3af0f
      https://github.com/llvm/llvm-project/commit/999b9e6ddb4324600a46c8f7006acec81fe3af0f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-04-10 (Wed, 10 Apr 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp

  Log Message:
  -----------
  [RISCV] Use vector getConstant instead of getSplatVector+getConstant. NFC


  Commit: dda73336ad22bd0b5ecda17040c50fb10fcbe5fb
      https://github.com/llvm/llvm-project/commit/dda73336ad22bd0b5ecda17040c50fb10fcbe5fb
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2024-04-10 (Wed, 10 Apr 2024)

  Changed paths:
    M clang/test/CodeGen/thinlto-distributed-cfi-devirt.ll
    M clang/test/CodeGen/thinlto-distributed-cfi.ll
    M clang/test/CodeGen/thinlto-funcattr-prop.ll
    M lld/test/ELF/lto/comdat-nodeduplicate.ll
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/IR/ModuleSummaryIndexYAML.h
    M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/ModuleSummaryIndex.cpp
    M llvm/test/Assembler/thinlto-memprof-summary.ll
    M llvm/test/Assembler/thinlto-multiple-summaries-for-guid.ll
    M llvm/test/Assembler/thinlto-summary-visibility.ll
    M llvm/test/Assembler/thinlto-summary.ll
    M llvm/test/Assembler/thinlto-vtable-summary.ll
    M llvm/test/Bitcode/thinlto-alias.ll
    M llvm/test/Bitcode/thinlto-func-summary-vtableref-pgo.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-relbf.ll
    M llvm/test/Bitcode/thinlto-function-summary-refgraph.ll
    M llvm/test/Bitcode/thinlto-index-disassembled-by-llvm-dis.ll
    M llvm/test/Bitcode/thinlto-type-tests.ll
    M llvm/test/Bitcode/thinlto-type-vcalls.ll
    M llvm/test/ThinLTO/X86/dot-dumper.ll
    M llvm/test/ThinLTO/X86/funcattrs-prop-maythrow.ll
    M llvm/test/ThinLTO/X86/funcimport_alwaysinline.ll
    M llvm/test/ThinLTO/X86/load-store-caching.ll
    M llvm/test/Transforms/LowerTypeTests/import-unsat.ll
    M llvm/test/Transforms/WholeProgramDevirt/Inputs/import-indir.yaml
    M llvm/test/Transforms/WholeProgramDevirt/import-indir.ll

  Log Message:
  -----------
  [ThinLTO]Record import type in GlobalValueSummary::GVFlags (#87597)

The motivating use case is to support import the function declaration
across modules to construct call graph edges for indirect calls [1]
when importing the function definition costs too much compile time
(e.g., the function is too large has no `noinline` attribute).
1. Currently, when the compiled IR module doesn't have a function
definition but its postlink combined summary contains the function
summary or a global alias summary with this function as aliasee, the
function definition will be imported from source module by IRMover. The
implementation is in FunctionImporter::importFunctions [2]
2. In order for FunctionImporter to import a declaration of a function,
both function summary and alias summary need to carry the def / decl
state. Specifically, all existing summary fields doesn't differ across
import modules, but the def / decl state of is decided by
`<ImportModule, Function>`.

This change encodes the def/decl state in `GlobalValueSummary::GVFlags`.

In the subsequent changes
1. The indexing step `computeImportForModule` [3]
will compute the set of definitions and the set of declarations for each
module, and passing on the information to bitcode writer.
2. Bitcode writer will look up the def/decl state and sets the state
when it writes out the flag value. This is demonstrated in
https://github.com/llvm/llvm-project/pull/87600
3. Function importer will read the def/decl state when reading the
combined summary to figure out two sets of global values, and IRMover
will be updated to import the declaration (aka linkGlobalValuePrototype [4])
into the destination module.

- The next change is https://github.com/llvm/llvm-project/pull/87600

[1] mentioned in rfc https://discourse.llvm.org/t/rfc-for-better-call-graph-sort-build-a-more-complete-call-graph-by-adding-more-indirect-call-edges/74029#support-cross-module-function-declaration-import-5
[2] https://github.com/llvm/llvm-project/blob/3b337242ee165554f0017b00671381ec5b1ba855/llvm/lib/Transforms/IPO/FunctionImport.cpp#L1608-L1764
[3] https://github.com/llvm/llvm-project/blob/3b337242ee165554f0017b00671381ec5b1ba855/llvm/lib/Transforms/IPO/FunctionImport.cpp#L856
[4] https://github.com/llvm/llvm-project/blob/3b337242ee165554f0017b00671381ec5b1ba855/llvm/lib/Linker/IRMover.cpp#L605


  Commit: 75edf0c18c777d69df7cfc6462e5233649bd47d4
      https://github.com/llvm/llvm-project/commit/75edf0c18c777d69df7cfc6462e5233649bd47d4
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M clang/include/clang/Serialization/ASTReader.h
    M clang/lib/Serialization/ASTReaderDecl.cpp

  Log Message:
  -----------
  [NFC] [Serialization] Avoid accessing PendingBodies as much as possible

The 'HaveBody' parameter in isConsumerInterestedIn is only used for the function decl if it
doesn't have a body already. It should be relatively less frequent than
the call to isConsumerInterestedIn. So we can delay the computing of
`HaveBdoy` to make it more efficient.


  Commit: 026165fad70420d85defb5fc9109c138250058ee
      https://github.com/llvm/llvm-project/commit/026165fad70420d85defb5fc9109c138250058ee
  Author: paperchalice <liujunchang97 at outlook.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/include/llvm/Passes/StandardInstrumentations.h
    M llvm/lib/Passes/StandardInstrumentations.cpp
    A llvm/test/Other/ChangePrinters/DotCfg/print-changed-dot-cfg.mir
    A llvm/test/Other/change-printer.mir

  Log Message:
  -----------
  [Instrumentation] Support MachineFunction in ChangeReporter (#80946)


  Commit: 53003e36e9f4574d06c22611f61f68de32c89c6b
      https://github.com/llvm/llvm-project/commit/53003e36e9f4574d06c22611f61f68de32c89c6b
  Author: Sacha Coppey <sacha.coppey at oracle.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/test/CodeGen/RISCV/rv64-patchpoint.ll
    A llvm/test/CodeGen/RISCV/rv64-statepoint-call-lowering-x1.ll
    A llvm/test/CodeGen/RISCV/rv64-statepoint-call-lowering-x2.ll
    A llvm/test/CodeGen/RISCV/rv64-statepoint-call-lowering.ll

  Log Message:
  -----------
  [RISCV] Implement Statepoint and Patchpoint lowering to call instructions (#77337)

This patch adds stackmap support for RISC-V with call targets.

Based on patch from https://reviews.llvm.org/D129848.


  Commit: b5640369337e98e573c949080ed4a4061ec6ec9a
      https://github.com/llvm/llvm-project/commit/b5640369337e98e573c949080ed4a4061ec6ec9a
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineCombinerPattern.h
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/lib/CodeGen/MachineCombiner.cpp
    M llvm/lib/CodeGen/TargetInstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.h
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.h
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.h
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrInfo.h

  Log Message:
  -----------
  [MachineCombiner][NFC] Split target-dependent patterns

We split target-dependent MachineCombiner patterns into their target
folder.

This makes MachineCombiner much more target-independent.

Reviewers:
davemgreen, asavonic, rotateright, RKSimon, lukel97, LuoYuanke, topperc, mshockwave, asi-sc

Reviewed By: topperc, mshockwave

Pull Request: https://github.com/llvm/llvm-project/pull/87991


  Commit: efb8cc5ddb03897795dc153a03d0c1548c8ee4a7
      https://github.com/llvm/llvm-project/commit/efb8cc5ddb03897795dc153a03d0c1548c8ee4a7
  Author: paperchalice <liujunchang97 at outlook.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/test/Other/ChangePrinters/DotCfg/print-changed-dot-cfg.mir

  Log Message:
  -----------
  [NewPM] Fix print-changed-dot-cfg failure (#88351)

Fix failure in #80946.


  Commit: 3197f9d8b0efc3efdc531421bd11c16305d9b1ff
      https://github.com/llvm/llvm-project/commit/3197f9d8b0efc3efdc531421bd11c16305d9b1ff
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/lib/Analysis/InstructionSimplify.cpp
    A llvm/test/Transforms/InstSimplify/pr87042.ll

  Log Message:
  -----------
  [InstSimplify] Make sure the simplified value doesn't generate poison in threadBinOpOverSelect (#87075)

Alive2: https://alive2.llvm.org/ce/z/y_Jmdn
Fix https://github.com/llvm/llvm-project/issues/87042.


  Commit: 2bede6873dbe7021b306d3e5bec59d0fba2dd26c
      https://github.com/llvm/llvm-project/commit/2bede6873dbe7021b306d3e5bec59d0fba2dd26c
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-04-10 (Wed, 10 Apr 2024)

  Changed paths:
    A llvm/include/llvm/ProfileData/MemProfReader.h
    M llvm/include/llvm/ProfileData/RawMemProfReader.h
    M llvm/lib/ProfileData/CMakeLists.txt
    A llvm/lib/ProfileData/MemProfReader.cpp
    R llvm/lib/ProfileData/RawMemProfReader.cpp
    M llvm/tools/llvm-profdata/llvm-profdata.cpp
    M llvm/unittests/ProfileData/MemProfTest.cpp
    M llvm/utils/gn/secondary/llvm/lib/ProfileData/BUILD.gn

  Log Message:
  -----------
  [memprof] Rename RawMemProfReader.{cpp,h} to MemProfReader.{cpp,h} (NFC) (#88200)

This patch renames RawMemProfReader.{cpp,h} to MemProfReader.{cpp,h},
respectively.  Also, it re-creates RawMemProfReader.h just to include
MemProfReader.h for compatibility with out-of-tree users.


  Commit: bd32aaa8c9ec2094f605315b3989adc2a567ca98
      https://github.com/llvm/llvm-project/commit/bd32aaa8c9ec2094f605315b3989adc2a567ca98
  Author: Cyrill Leutwiler <bigcyrill at hotmail.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M compiler-rt/lib/builtins/riscv/restore.S
    M compiler-rt/lib/builtins/riscv/save.S

  Log Message:
  -----------
  [RISCV] Support rv{32, 64}e in the compiler builtins (#88252)

Register spills (save/restore) in RISC-V embedded work differently
because there are less registers and different stack alignment.

[GCC equivalent
](https://github.com/gcc-mirror/gcc/blob/master/libgcc/config/riscv/save-restore.S#L298C16-L336)

Follow up from #76777.

---------

Signed-off-by: xermicus <cyrill at parity.io>


  Commit: 5964c944bfe74cee2872cddb66eff22866cdb6ee
      https://github.com/llvm/llvm-project/commit/5964c944bfe74cee2872cddb66eff22866cdb6ee
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-04-10 (Wed, 10 Apr 2024)

  Changed paths:
    M clang-tools-extra/clangd/unittests/HoverTests.cpp

  Log Message:
  -----------
  [clangd] Fix test case due to clang-format bug fix (#88352)

See commit 51f1681424f1.


  Commit: 45146082e693415f37413c656e0a0fd13d0e3136
      https://github.com/llvm/llvm-project/commit/45146082e693415f37413c656e0a0fd13d0e3136
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-04-10 (Wed, 10 Apr 2024)

  Changed paths:
    M lld/ELF/ICF.cpp
    M lld/ELF/InputSection.cpp

  Log Message:
  -----------
  [ELF] relocateNonAlloc & ICF: replace random access iterators of relocations with input iterators. NFC

Also replace one `this->file` with a local variable as some function
calls are opaque to the compiler, causing unneeded reload.


  Commit: 71f1932b842793e5dc7b17051452e8ff2f9219aa
      https://github.com/llvm/llvm-project/commit/71f1932b842793e5dc7b17051452e8ff2f9219aa
  Author: martinboehme <mboehme at google.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
    M clang/lib/Analysis/FlowSensitive/Transfer.cpp
    M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
    M clang/unittests/Analysis/FlowSensitive/DataflowEnvironmentTest.cpp
    M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp

  Log Message:
  -----------
  [clang][dataflow] Reland #87320: Propagate locations from result objects to initializers. (#88316)

This relands #87320 and additionally removes the now-unused function
`isOriginalRecordConstructor()`, which was causing buildbots to fail.


  Commit: 297eca981ea1133388c82ddbfaf9d86391abac65
      https://github.com/llvm/llvm-project/commit/297eca981ea1133388c82ddbfaf9d86391abac65
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M mlir/include/mlir/Interfaces/ValueBoundsOpInterface.h
    M mlir/lib/Dialect/SCF/IR/ValueBoundsOpInterfaceImpl.cpp
    M mlir/lib/Interfaces/ValueBoundsOpInterface.cpp
    M mlir/test/Dialect/Affine/value-bounds-op-interface-impl.mlir
    M mlir/test/Dialect/SCF/value-bounds-op-interface-impl.mlir
    M mlir/test/Dialect/Tensor/value-bounds-op-interface-impl.mlir
    M mlir/test/lib/Dialect/Affine/TestReifyValueBounds.cpp

  Log Message:
  -----------
  [mlir][Interfaces] `ValueBoundsOpInterface`: Add API to compare values (#86915)

This commit adds a new public API to `ValueBoundsOpInterface` to compare
values/dims. Supported comparison operators are: LT, LE, EQ, GE, GT.

The new `ValueBoundsOpInterface::compare` API replaces and generalizes
`ValueBoundsOpInterface::areEqual`. Not only does it provide additional
comparison operators, it also works in cases where the difference
between the two values/dims is non-constant. The previous implementation
of `areEqual` used to compute a constant bound of `val1 - val2` (check
if it `== 0` or `!= 0`).

Note: This commit refactors, generalizes and adds a public API for
value/dim comparison. The comparison functionality itself was introduced
in #85895 and is already in use for analyzing `scf.if`.

In the long term, this improvement will allow for a more powerful
analysis of subset ops. A future commit will update
`areOverlappingSlices` to use the new comparison API.
(`areEquivalentSlices` is already using the new API.) This will improve
subset equivalence/disjointness checks with non-constant
offsets/sizes/strides.


  Commit: 21265f692e4b3b2146b6095cf23122b20e8fa0ed
      https://github.com/llvm/llvm-project/commit/21265f692e4b3b2146b6095cf23122b20e8fa0ed
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M mlir/lib/Interfaces/ValueBoundsOpInterface.cpp

  Log Message:
  -----------
  [mlir][Interfaces] `ValueBoundsOpInterface`: Fix typo (#87976)

This was likely a copy-and-paste typo.


  Commit: dc39028906ba4196c3ba544c43ef6b428cf47c51
      https://github.com/llvm/llvm-project/commit/dc39028906ba4196c3ba544c43ef6b428cf47c51
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M mlir/lib/Interfaces/ValueBoundsOpInterface.cpp

  Log Message:
  -----------
  [mlir] Fix -Wsign-compare in ValueBoundsOpInterface.cpp (NFC)

/llvm-project/mlir/lib/Interfaces/ValueBoundsOpInterface.cpp:762:16:
error: comparison of integers of different signs: 'int64_t' (aka 'long') and 'size_t' (aka 'unsigned long') [-Werror,-Wsign-compare]
        rhsPos >= cstr.positionToValueDim.size())
        ~~~~~~ ^  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/llvm-project/mlir/lib/Interfaces/ValueBoundsOpInterface.cpp:761:16:
error: comparison of integers of different signs: 'int64_t' (aka 'long') and 'size_t' (aka 'unsigned long') [-Werror,-Wsign-compare]
    if (lhsPos >= cstr.positionToValueDim.size() ||
        ~~~~~~ ^  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2 errors generated.


  Commit: 3f7f446d3803a699f5964a7429c6e1de0d783452
      https://github.com/llvm/llvm-project/commit/3f7f446d3803a699f5964a7429c6e1de0d783452
  Author: Haohai Wen <haohai.wen at intel.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/tools/llvm-profgen/PerfReader.cpp
    M llvm/tools/llvm-profgen/PerfReader.h

  Log Message:
  -----------
  [llvm-profgen] Remove temporary perf script files (#86668)

The temporary perf script files converted from perf data will occupy
lots
of space for large project. This patch removes them when llvm-profgen
exits normally or receives signals.


  Commit: a53674359da8507af539bf879e1b8292e3720eb8
      https://github.com/llvm/llvm-project/commit/a53674359da8507af539bf879e1b8292e3720eb8
  Author: David Green <david.green at arm.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64PerfectShuffle.h
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AArch64/shuffle-other.ll
    M llvm/test/Analysis/CostModel/AArch64/shuffle-store.ll
    M llvm/test/Transforms/VectorCombine/AArch64/vecreduce-shuffle.ll

  Log Message:
  -----------
  [AArch64] Add ZIP and UZP shuffle costs. (#88150)

This adds some costs for the shuffle instructions that should be lowered
to zip1/zip2/uzp1/uzp2 instructions.


  Commit: 85bc6de67ef28cd203da0c5abc1485609bea989c
      https://github.com/llvm/llvm-project/commit/85bc6de67ef28cd203da0c5abc1485609bea989c
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M clang/lib/Tooling/CMakeLists.txt

  Log Message:
  -----------
  Revert "Use setup_host_tool for clang-ast-dump, fixes 76707"

This reverts commit b4adb42151bbfa80be4cf6d076cbe5edf680693e.

The original commit increased local rebuild times a lot. See
the discussion in
https://github.com/llvm/llvm-project/issues/76707


  Commit: d7e0ea205fa111fba46e08f3df2860f76b47acb6
      https://github.com/llvm/llvm-project/commit/d7e0ea205fa111fba46e08f3df2860f76b47acb6
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    A llvm/test/CodeGen/PowerPC/xxinsertw.ll

  Log Message:
  -----------
  [PowerPC] add testcase for a xxinsertw bug, NFC


  Commit: 053750c3b42c126eb4620f62cbf4e665803b941d
      https://github.com/llvm/llvm-project/commit/053750c3b42c126eb4620f62cbf4e665803b941d
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/test/CodeGen/PowerPC/xxinsertw.ll

  Log Message:
  -----------
  [PowerPC] Fix the undef register for VECINSERT

If the V2 of the vector_shuffle is undef, the two vector inputs are
expected to be the same when do the VECINSERT transformation. For now
the first operand of VECINSERT is set to undef which is not right.
This patch fixes this bug.


  Commit: a1cd5e69544ad3e6a865f5e0593ac26195ccb4f7
      https://github.com/llvm/llvm-project/commit/a1cd5e69544ad3e6a865f5e0593ac26195ccb4f7
  Author: Michael Klemm <michael.klemm at amd.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M flang/docs/ModFiles.md
    M flang/tools/f18/CMakeLists.txt

  Log Message:
  -----------
  [flang] Do not create .f18.mod files for each compiled module (#85249)

The default CMake scripts had a copy operation to copy a compiled `.mod`
file to also be available with suffix `.f18.mod`. This seems no longer
needed. Also updated ModFiles.md to point to `-module-suffix`.

---------

Co-authored-by: Kiran Chandramohan <kiranchandramohan at gmail.com>


  Commit: 9c6e54b154cbbb7da0f45b4ae1e66bcf492151f1
      https://github.com/llvm/llvm-project/commit/9c6e54b154cbbb7da0f45b4ae1e66bcf492151f1
  Author: Maciej Gabka <maciej.gabka at arm.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td

  Log Message:
  -----------
  [AArch64] Fix to Neoverse V2 scheduling model (#88130)

The size of ROB was incorrecty copied from the Neoverse N2, while it has
actually higher value as descibed in

https://community.arm.com/arm-community-blogs/b/infrastructure-solutions-blog/posts/arm-neoverse-v2-platform-best-in-class-cloud-and-ai-ml-performance


  Commit: cd14e7132f18dccd5fc7ed5e60258460bc1352f8
      https://github.com/llvm/llvm-project/commit/cd14e7132f18dccd5fc7ed5e60258460bc1352f8
  Author: Ramkumar Ramachandra <ram.ramachandra at arm.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M lld/ELF/Arch/AArch64.cpp
    M lld/test/ELF/aarch64-reloc-implicit-addend.test

  Log Message:
  -----------
  lld/AArch64: handle more relocation addends (#87328)

The function getImplicitAddend() is incomplete, as it is possible to
cook up object files with other relocation addends. Although using
llvm-mc or the clang integrated assembler does not produce such object
files, a proprietary assembler known as armasm can:

https://developer.arm.com/documentation/101754/0622/armasm-Legacy-Assembler-Reference

armasm is in a frozen state, but it is still actively used in a lot of
legacy codebases as the directives, macros and operators are very
different from the clang integrated assembler. This makes porting a lot
of legacy code from armasm syntax impractical for a lot of projects.
Some internal testing of projects using open-source clang and lld fell
over at link time when legacy armasm objects were included in the link.

The goal of this patch is to enable people with legacy armasm objects to
be able to use lld as the linker. Sadly armasm uses SHT_REL format
relocations for AArch64 rather than SHT_RELA, which causes lld to reject
the objects. As a frozen project we know the small number of relocations
that the assembler officially supports and won't include (outside the
equivalent of the .reloc directive which I think we can rule out of
scope as that is not commonly used).

The benefit to lld is that it will ease migration from a proprietary to
an open-source toolchain. The drawback is the implementation of a small
number of SHT_REL relocations. Although this patch doesn't aim to
comprehensively cover all possible relocation addends, it does extend
lld to work with the relocation addends that armasm produces, using the
canonical aaelf64 document as a reference:

  https://github.com/ARM-software/abi-aa/blob/main/aaelf64/aaelf64.rst


  Commit: def6174d2a7a5a66b3871d4ce5035a71e513e6ef
      https://github.com/llvm/llvm-project/commit/def6174d2a7a5a66b3871d4ce5035a71e513e6ef
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M bolt/include/bolt/Core/BinaryFunction.h
    M bolt/test/X86/patch-entries.test

  Log Message:
  -----------
  [BOLT] Emit empty FDE for injected functions

This fixes an issue where `PatchEntries` overwrites function body but
keeps CFI untouched. Existing FDEs thus become invalid. This doesn't
affect unwinding because patched functions are transparent from
EH/unwinding perspective, but it breaks BOLT during disassembling those
functions.

Emit empty FDE for injected functions (emitted to the same address as
.org functions) that take precedence over the original FDE.

This adds eh_frame overhead, but restores the ability to disassemble
.org functions. Note that the overhead is avoided in `-use-old-text`
mode.

Test Plan: updated bolt/test/X86/patch-entries.test

Reviewers: rafaelauler, maksfb, dcci, ayermolo

Reviewed By: maksfb, dcci

Pull Request: https://github.com/llvm/llvm-project/pull/87967


  Commit: fe3b20d5ab4b47823fb48ad7cfbc47b8224ce826
      https://github.com/llvm/llvm-project/commit/fe3b20d5ab4b47823fb48ad7cfbc47b8224ce826
  Author: NagyDonat <donat.nagy at ericsson.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp
    M clang/lib/StaticAnalyzer/Checkers/PthreadLockChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/SimpleStreamChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ValistChecker.cpp

  Log Message:
  -----------
  [analyzer] Use CDM::CLibrary instead of isGlobalCFunction() (#88267)

This commit updates several checkers to use call descriptions with the
matching mode `CDM::CLibrary` instead of checking
`Call.isGlobalCFunction()` after performing the match. This resolves
several TODOs in various checkers.

Note that both matching with `CDM::CLibrary` and calling
`isGlobalCFunction` leads to `CheckerContext::isCLibraryFunction()`
checks (so this change is close to being NFC), but if it is used via the
matching mode then the checker can automatically recognize the builtin
variants of the matched functions.

I'll also make similar changes in GenericTaintChecker, but that checker
has separate and inconsistent rules for handling the normal and the
builtin variant of several functions (e.g. `memcpy` and
`__builtin_memcpy`), so I'll put those changes into a separate commit.


  Commit: 5c9315f575370393ccc89ef0229743c05f6fe703
      https://github.com/llvm/llvm-project/commit/5c9315f575370393ccc89ef0229743c05f6fe703
  Author: Johannes Reifferscheid <jreiffers at google.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M mlir/lib/Conversion/ComplexToStandard/ComplexToStandard.cpp
    M mlir/test/Conversion/ComplexToStandard/convert-to-standard.mlir

  Log Message:
  -----------
  Fix complex log1p accuracy with large abs values. (#88364)

This ports openxla/xla#10503 by @pearu. In addition to the filecheck
test here, the accuracy was tested with XLA's complex_unary_op_test and
its MLIR emitters.

This is a fixed version of
https://github.com/llvm/llvm-project/pull/88260. The previous version
relied on implementation-specific behavior in the order of evaluation of
maxAbsOfRealPlusOneAndImagMinusOne's operands.


  Commit: db2fb3d96b217f0d2e139e7816c98d9f95974f25
      https://github.com/llvm/llvm-project/commit/db2fb3d96b217f0d2e139e7816c98d9f95974f25
  Author: Freddy Ye <freddy.ye at intel.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M clang/lib/Basic/Targets/X86.cpp
    M clang/test/Preprocessor/x86_target_features.c

  Log Message:
  -----------
  [X86] Define __APX_F__ when APX is enabled. (#88343)

Relate gcc patch:
https://gcc.gnu.org/pipermail/gcc-patches/2024-April/648789.html


  Commit: 32b95a37083d1fee1a638e292be0aac9a98792fd
      https://github.com/llvm/llvm-project/commit/32b95a37083d1fee1a638e292be0aac9a98792fd
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/test/Transforms/VectorCombine/X86/shuffle-of-casts.ll

  Log Message:
  -----------
  [VectorCombine][X86] Extend shuffle(bitcast(x),bitcast(y)) test coverage

As discussed on #87510 the intention is to fold shuffle(bitcast(x),bitcast(y)) -> bitcast(shuffle(x,y)), but it must not interfere with existing bitcast(shuffle(bitcast(x),bitcast(y))) folds.


  Commit: 478c42004c2bd4c91a01c47450eca6cdb6b0982d
      https://github.com/llvm/llvm-project/commit/478c42004c2bd4c91a01c47450eca6cdb6b0982d
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h

  Log Message:
  -----------
  [VPlan] Update recipe ::clone definitions to use cloned tys (NFC).

Update definitions on ::clone in recipe sub-types to use the sub-type as
return type. This avoids typecasts down to the cloned type in some
cases.


  Commit: 462e1023838703f1d3e763869afdd72ec5342a33
      https://github.com/llvm/llvm-project/commit/462e1023838703f1d3e763869afdd72ec5342a33
  Author: Poseydon42 <vvmposeydon at gmail.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/icmp-div-constant.ll

  Log Message:
  -----------
  [InstCombine] Fold (X / C) < X and (X >> C) < X into X > 0 (#85555)

Proofs: https://alive2.llvm.org/ce/z/52droC

This resolves #85313.


  Commit: 82ae646eb49cfd762db7db0a74b130970fe45d97
      https://github.com/llvm/llvm-project/commit/82ae646eb49cfd762db7db0a74b130970fe45d97
  Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/tools/llvm-mca/CMakeLists.txt

  Log Message:
  -----------
  [llvm-mca] Remove spurious include_directories() (#88277)

llvm-mca does not have an include directory so this commit removes the
spurious include_directories directive.


  Commit: e7bc53726459bba3a48b1f529f1fd9472ad9051c
      https://github.com/llvm/llvm-project/commit/e7bc53726459bba3a48b1f529f1fd9472ad9051c
  Author: Andreas Jonson <andjo403 at hotmail.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/SCCPSolver.h
    M llvm/lib/Transforms/IPO/SCCP.cpp
    M llvm/lib/Transforms/Utils/SCCPSolver.cpp
    A llvm/test/Transforms/SCCP/range-attribute.ll

  Log Message:
  -----------
  [IPSCCP] Add range attribute handling (#86747)

Support the new range attribute to infer ConstantRanges in IPSCCP.


  Commit: eef63d3c92766c6f8e78eefb9bb37ae01fbedbfc
      https://github.com/llvm/llvm-project/commit/eef63d3c92766c6f8e78eefb9bb37ae01fbedbfc
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/openmp-parallel-reduction-cleanup.mlir
    M mlir/test/Target/LLVMIR/openmp-wsloop-reduction-cleanup.mlir

  Log Message:
  -----------
  [mlir][OpenMP] add missing load for reduction cleanup region (#88289)

I missed this before. For by-ref reductions, the private reduction
variable is a pointer to the pointer to the variable. So an extra load
is required to get the right value.

See the "red.private.value.n" loads in the reduction combiner region for
reference.


  Commit: 6f068b9cf1ac09945c096269f0c6c276d2ec95c4
      https://github.com/llvm/llvm-project/commit/6f068b9cf1ac09945c096269f0c6c276d2ec95c4
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
    M flang/test/Lower/OpenMP/parallel-reduction-array.f90
    M flang/test/Lower/OpenMP/parallel-reduction-array2.f90
    M flang/test/Lower/OpenMP/parallel-reduction3.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-array-assumed-shape.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-array.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-array2.f90

  Log Message:
  -----------
  [flang][OpenMP] Allocate array reduction variables on the heap (#87773)

Following up on a review comment:
https://github.com/llvm/llvm-project/pull/84958#discussion_r1527627848

Reductions might be inlined inside of a loop so stack allocations are
not safe.

Normally flang allocates arrays on the stack. Allocatable arrays have a
different type: fir.box<fir.heap<fir.array<...>>> instead of
fir.box<fir.array<...>>. This patch will allocate all arrays on the
heap.

Reductions on allocatable arrays still aren't supported (but I will get
to this soon).


  Commit: b800a9352330a5b3db91d43f2cc6a0ddeda03aa6
      https://github.com/llvm/llvm-project/commit/b800a9352330a5b3db91d43f2cc6a0ddeda03aa6
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/lib/IR/AsmWriter.cpp

  Log Message:
  -----------
  Fix MSVC "not all control paths return a value" warning. NFC.


  Commit: 759422c6df2dfe42d01bb64b42f43ab57db6e59e
      https://github.com/llvm/llvm-project/commit/759422c6df2dfe42d01bb64b42f43ab57db6e59e
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp

  Log Message:
  -----------
  [DAG] visitEXTRACT_SUBVECTOR - pull out repeated SDLoc. NFC.


  Commit: cca30dfb5935e05837e37cced4407a63393c6642
      https://github.com/llvm/llvm-project/commit/cca30dfb5935e05837e37cced4407a63393c6642
  Author: nikitalita <nikitalita at protonmail.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp

  Log Message:
  -----------
  [DebugInfo][ObjectYAML] Remove duplicate "Flags" field from LabelSym (#88194)

There was a duplicate flags field mistakenly left in LabelSym. [LabelSym
only has one flags
field](https://github.com/microsoft/microsoft-pdb/blob/805655a28bd8198004be2ac27e6e0290121a5e89/include/cvinfo.h#L3806)


  Commit: b60974dc9e5d98054f5a3a0dac7eab70e38bd416
      https://github.com/llvm/llvm-project/commit/b60974dc9e5d98054f5a3a0dac7eab70e38bd416
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/test/Transforms/VectorCombine/X86/shuffle.ll

  Log Message:
  -----------
  [VectorCombine][X86] Extend bitcast(shuffle(x,y)) test coverage

As discussed on #87510 the intention is only to fold bitcast(shuffle(x,y)) -> shuffle(bitcast(x),bitcast(y)) if we won't actually increase the number of bitcasts (i.e. x or y is already bitcasted from the correct type).


  Commit: a8b461603b3fab3b229ea6552433cb359c30350c
      https://github.com/llvm/llvm-project/commit/a8b461603b3fab3b229ea6552433cb359c30350c
  Author: Adrian Kuegel <akuegel at google.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp

  Log Message:
  -----------
  [mlir] Apply ClangTidy BugProne fix

forwarding reference passed to std::move(), which may unexpectedly cause
lvalues to be moved; use std::forward() instead.


  Commit: 962534c4b490239269bb2e11d036596826539046
      https://github.com/llvm/llvm-project/commit/962534c4b490239269bb2e11d036596826539046
  Author: Adrian Kuegel <akuegel at google.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp

  Log Message:
  -----------
  [mlir] Apply ClangTidy BugProne patch

This time for real.


  Commit: 364963a0a3935ced1acb2e959ecd08aef39405ef
      https://github.com/llvm/llvm-project/commit/364963a0a3935ced1acb2e959ecd08aef39405ef
  Author: Nathan Sidwell <nathan at acm.org>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M bolt/lib/Rewrite/RewriteInstance.cpp

  Log Message:
  -----------
  [BOLT][NFC] Do not assume text section name in more places (#88303)

Fixes a couple more places where ".text" is presumed for the main
code section name.


  Commit: e2d482395992d725663543d297f5ab3cc5918fcc
      https://github.com/llvm/llvm-project/commit/e2d482395992d725663543d297f5ab3cc5918fcc
  Author: Nathan Sidwell <nathan at acm.org>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M bolt/lib/Rewrite/BinaryPassManager.cpp

  Log Message:
  -----------
  [BOLT][NFC] Make RepRet X86-specific (#88286)

Bolt's RepRet pass is x86-specific, no need to add it for non-x86
targets.


  Commit: a403ad9336a24c459ee79d2cb7675c4b1f32bfd9
      https://github.com/llvm/llvm-project/commit/a403ad9336a24c459ee79d2cb7675c4b1f32bfd9
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/X86/shuffle.ll

  Log Message:
  -----------
  [VectorCombine] foldBitcastShuffle - limit bitcast(shuffle(x,y)) -> shuffle(bitcast(x),bitcast(y))

Only fold bitcast(shuffle(x,y)) -> shuffle(bitcast(x),bitcast(y)) if we won't actually increase the number of bitcasts (i.e. x or y is already bitcasted from the correct type).


  Commit: 717d3f3974f43d90c1b8829a4077bbc2a2413c83
      https://github.com/llvm/llvm-project/commit/717d3f3974f43d90c1b8829a4077bbc2a2413c83
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/X86/shuffle-of-casts.ll

  Log Message:
  -----------
  [VectorCombine] foldShuffleOfCastops - add initial shuffle(bitcast(x),bitcast(y)) -> bitcast(shuffle(x,y)) support

Just handle cases where the bitcast src/dst element counts are the same (future patches will add shuffle mask scaling)


  Commit: 9d9bb7b1b6e96dc833133dacf1e2c7d9792e640e
      https://github.com/llvm/llvm-project/commit/9d9bb7b1b6e96dc833133dacf1e2c7d9792e640e
  Author: Johannes Reifferscheid <jreiffers at google.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M mlir/lib/Conversion/ComplexToStandard/ComplexToStandard.cpp
    M mlir/test/Conversion/ComplexToStandard/convert-to-standard.mlir
    M mlir/test/Conversion/ComplexToStandard/full-conversion.mlir

  Log Message:
  -----------
  Fix complex abs corner cases. (#88373)

The current implementation fails for very small and very large values.
For example, (0, -inf) should return inf, but it returns -inf.

This ports the logic used in XLA. Tested with XLA's
exhaustive_binary_test_f32_f64.


  Commit: b1094776152b68efa05f69b7b833f9cbc0727efc
      https://github.com/llvm/llvm-project/commit/b1094776152b68efa05f69b7b833f9cbc0727efc
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M clang/test/CodeGen/ms-intrinsics-other.c
    M clang/test/CodeGen/ms-intrinsics.c
    M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
    M clang/test/Headers/__clang_hip_math.hip
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/test/Transforms/InstCombine/RISCV/riscv-vsetvli-knownbits.ll
    M llvm/test/Transforms/InstCombine/RISCV/riscv-vsetvlimax-knownbits.ll
    M llvm/test/Transforms/InstCombine/add.ll
    M llvm/test/Transforms/InstCombine/binop-itofp.ll
    M llvm/test/Transforms/InstCombine/bswap-fold.ll
    M llvm/test/Transforms/InstCombine/bswap.ll
    M llvm/test/Transforms/InstCombine/cast.ll
    M llvm/test/Transforms/InstCombine/cmp-intrinsic.ll
    M llvm/test/Transforms/InstCombine/compare-signs.ll
    M llvm/test/Transforms/InstCombine/ctpop.ll
    M llvm/test/Transforms/InstCombine/extractelement-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/extractelement.ll
    M llvm/test/Transforms/InstCombine/ffs-1.ll
    M llvm/test/Transforms/InstCombine/fls.ll
    M llvm/test/Transforms/InstCombine/fold-log2-ceil-idiom.ll
    M llvm/test/Transforms/InstCombine/high-bit-signmask-with-trunc.ll
    M llvm/test/Transforms/InstCombine/icmp-mul-zext.ll
    M llvm/test/Transforms/InstCombine/icmp-of-trunc-ext.ll
    M llvm/test/Transforms/InstCombine/icmp-topbitssame.ll
    M llvm/test/Transforms/InstCombine/insert-trunc.ll
    M llvm/test/Transforms/InstCombine/insertelt-trunc.ll
    M llvm/test/Transforms/InstCombine/known-bits.ll
    M llvm/test/Transforms/InstCombine/known-non-zero.ll
    M llvm/test/Transforms/InstCombine/known-phi-recurse.ll
    M llvm/test/Transforms/InstCombine/logical-select-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/logical-select.ll
    M llvm/test/Transforms/InstCombine/lshr-trunc-sext-to-ashr-sext.ll
    M llvm/test/Transforms/InstCombine/lshr.ll
    M llvm/test/Transforms/InstCombine/merging-multiple-stores-into-successor.ll
    M llvm/test/Transforms/InstCombine/narrow.ll
    M llvm/test/Transforms/InstCombine/negated-bitmask.ll
    M llvm/test/Transforms/InstCombine/pr34349.ll
    M llvm/test/Transforms/InstCombine/reduction-add-sext-zext-i1.ll
    M llvm/test/Transforms/InstCombine/sadd_sat.ll
    M llvm/test/Transforms/InstCombine/select-cmp-cttz-ctlz.ll
    M llvm/test/Transforms/InstCombine/select-imm-canon.ll
    M llvm/test/Transforms/InstCombine/select.ll
    M llvm/test/Transforms/InstCombine/sext-of-trunc-nsw.ll
    M llvm/test/Transforms/InstCombine/sext.ll
    M llvm/test/Transforms/InstCombine/shift-add.ll
    M llvm/test/Transforms/InstCombine/shift-amount-reassociation-in-bittest-with-truncation-lshr.ll
    M llvm/test/Transforms/InstCombine/shift-amount-reassociation-with-truncation-ashr.ll
    M llvm/test/Transforms/InstCombine/shift-amount-reassociation-with-truncation-lshr.ll
    M llvm/test/Transforms/InstCombine/shift-shift.ll
    M llvm/test/Transforms/InstCombine/shift.ll
    M llvm/test/Transforms/InstCombine/shl-demand.ll
    M llvm/test/Transforms/InstCombine/sign-bit-test-via-right-shifting-all-other-bits.ll
    M llvm/test/Transforms/InstCombine/trunc-demand.ll
    M llvm/test/Transforms/InstCombine/trunc-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/trunc-shift-trunc.ll
    M llvm/test/Transforms/InstCombine/trunc.ll
    M llvm/test/Transforms/InstCombine/truncating-saturate.ll
    M llvm/test/Transforms/InstCombine/vector-trunc.ll
    M llvm/test/Transforms/InstCombine/xor-ashr.ll
    M llvm/test/Transforms/InstCombine/zext-ctlz-trunc-to-ctlz-add.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/deterministic-type-shrinkage.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/intrinsiccost.ll
    M llvm/test/Transforms/LoopVectorize/X86/intrinsiccost.ll
    M llvm/test/Transforms/LoopVectorize/reduction.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/quant_4x4.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr46983.ll

  Log Message:
  -----------
  [InstCombine] Infer nsw/nuw for trunc (#87910)

This patch adds support for inferring trunc's nsw/nuw flags.


  Commit: 496de32ee2c34880c7d3396bbd09e45d5d5c8a9e
      https://github.com/llvm/llvm-project/commit/496de32ee2c34880c7d3396bbd09e45d5d5c8a9e
  Author: paperchalice <liujunchang97 at outlook.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/DeadMachineInstructionElim.h
    M llvm/include/llvm/CodeGen/FreeMachineFunction.h
    M llvm/include/llvm/CodeGen/MIRPrinter.h
    M llvm/include/llvm/CodeGen/MachinePassManager.h
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/include/llvm/Passes/PassBuilder.h
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/unittests/MIR/PassBuilderCallbacksTest.cpp

  Log Message:
  -----------
  [NewPM] Remove `MachinePassInfoMixin` (#88243)

Unify the inheritance paths of IR and machine function.


  Commit: a6db20f2c39ecb5939890317068d5398c760746d
      https://github.com/llvm/llvm-project/commit/a6db20f2c39ecb5939890317068d5398c760746d
  Author: Marc Auberer <marc.auberer at chillibits.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M libcxx/include/__bit/countl.h
    M libcxx/include/__bit/countr.h
    M libcxx/include/__bit/popcount.h

  Log Message:
  -----------
  [libcxx] Use generic builtins for popcount, clz and ctz (#86563)

Fixes #86556

Use `__builtin_popcountg` instead of `__buildin_popcount{l|ll}`
Use `__builtin_clzg instead` of `__buildin_clz{l|ll}`
Use `__builtin_ctzg instead` of `__builtin_ctz{l|ll}`

The generic variant of the builtins can be used to simplify some logic
with >= Clang 19 or >= GCC 14, where these generic variants are
available. As for backwards compatibility reasons, we can't completely
remove the old logic. Therefore, I left ToDo comments to address this,
as soon as support for pre Clang 19 as well as pre GCC 14 is dropped.

---------

Co-authored-by: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>


  Commit: 402f15ea92061d94412807887c8115374974967e
      https://github.com/llvm/llvm-project/commit/402f15ea92061d94412807887c8115374974967e
  Author: martinboehme <mboehme at google.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M clang/docs/tools/clang-formatted-files.txt
    R clang/include/clang/Analysis/FlowSensitive/ControlFlowContext.h

  Log Message:
  -----------
  [clang][dataflow] Remove deprecated alias `ControlFlowContext`. (#88358)


  Commit: 6fd2fdccf2f28fc155f614eec41f785492aad618
      https://github.com/llvm/llvm-project/commit/6fd2fdccf2f28fc155f614eec41f785492aad618
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M clang/test/CodeGen/X86/avx-shuffle-builtins.c
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/PhaseOrdering/X86/pr67803.ll
    M llvm/test/Transforms/VectorCombine/X86/shuffle-of-casts.ll
    M llvm/test/Transforms/VectorCombine/X86/shuffle.ll

  Log Message:
  -----------
  [VectorCombine] foldShuffleOfCastops - extend shuffle(bitcast(x),bitcast(y)) -> bitcast(shuffle(x,y)) support

Handle shuffle mask scaling handling for cases where the bitcast src/dst element counts are different


  Commit: 77dd43570bf7a4bad688de8d8326c34590a0fa94
      https://github.com/llvm/llvm-project/commit/77dd43570bf7a4bad688de8d8326c34590a0fa94
  Author: Johannes Reifferscheid <jreiffers at google.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M mlir/lib/Conversion/ComplexToStandard/ComplexToStandard.cpp
    M mlir/test/Conversion/ComplexToStandard/convert-to-standard.mlir

  Log Message:
  -----------
  Fix complex power for large inputs. (#88387)

For example, 1e30^1.2 currently overflows.

Also forward fastmath flags.

This ports XLA's logic and was verified with its test suite. Note that
rsqrt and sqrt are still broken.


  Commit: 599adf30afe5802fab80419ec5bb896036a1c8fb
      https://github.com/llvm/llvm-project/commit/599adf30afe5802fab80419ec5bb896036a1c8fb
  Author: kadir çetinkaya <kadircet at google.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M clang-tools-extra/include-cleaner/lib/FindHeaders.cpp
    M clang-tools-extra/include-cleaner/unittests/FindHeadersTest.cpp

  Log Message:
  -----------
  [include-cleaner] Dont apply name-match for non-owning headers (#82625)


  Commit: 61ea1bc23aa941714be3ec818c922e4ee5a279a3
      https://github.com/llvm/llvm-project/commit/61ea1bc23aa941714be3ec818c922e4ee5a279a3
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    A llvm/test/Transforms/VectorCombine/X86/pr67803.ll

  Log Message:
  -----------
  [VectorCombine][X86] Add test coverage for #67803

We are still missing a fold for shuffle(bitcast(sext(x)),bitcast(sext(y))) -> bitcast(sext(shuffle(x,y))) due to foldShuffleOfCastops failing to add new instructions back onto the worklist


  Commit: ff74236f342c7bc185f56a07bab7bd0cf356c7c6
      https://github.com/llvm/llvm-project/commit/ff74236f342c7bc185f56a07bab7bd0cf356c7c6
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/X86/pr67803.ll

  Log Message:
  -----------
  [VectorCombine] foldShuffleOfCastops - ensure we add all new instructions onto the worklist

When creating cast(shuffle(x,y)) we were only adding the cast() to the worklist, not the new shuffle, preventing recursive combines.

foldShuffleOfBinops is also failing to do this, but I still need to add test coverage for this.


  Commit: 44718311dee486f1823876e8af9100afcc50041b
      https://github.com/llvm/llvm-project/commit/44718311dee486f1823876e8af9100afcc50041b
  Author: Jakub Kuderski <jakub at nod-labs.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/AMDGPU/CMakeLists.txt
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
    R mlir/include/mlir/Dialect/AMDGPU/TransformOps/AMDGPUTransformOps.h
    R mlir/include/mlir/Dialect/AMDGPU/TransformOps/AMDGPUTransformOps.td
    R mlir/include/mlir/Dialect/AMDGPU/TransformOps/CMakeLists.txt
    M mlir/include/mlir/Dialect/AMDGPU/Transforms/Passes.h
    M mlir/include/mlir/Dialect/AMDGPU/Transforms/Passes.td
    R mlir/include/mlir/Dialect/AMDGPU/Transforms/Transforms.h
    R mlir/include/mlir/Dialect/AMDGPU/Transforms/Utils.h
    M mlir/include/mlir/InitAllExtensions.h
    M mlir/lib/Dialect/AMDGPU/CMakeLists.txt
    M mlir/lib/Dialect/AMDGPU/IR/AMDGPUDialect.cpp
    R mlir/lib/Dialect/AMDGPU/TransformOps/AMDGPUTransformOps.cpp
    R mlir/lib/Dialect/AMDGPU/TransformOps/CMakeLists.txt
    M mlir/lib/Dialect/AMDGPU/Transforms/CMakeLists.txt
    R mlir/lib/Dialect/AMDGPU/Transforms/OptimizeSharedMemory.cpp
    R mlir/lib/Dialect/AMDGPU/Transforms/Utils.cpp
    R mlir/test/Dialect/AMDGPU/optimize_shmem_reads_writes.mlir
    R mlir/test/Dialect/AMDGPU/transform_optimize_shmem_reads_writes.mlir
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][amdgpu] Remove shared memory optimization pass (#88225)

This implementation has a number of issues and ultimately does not work
on gfx9.
* It does not reduce bank conflicts with wide memory accesses.
* It does not correctly account for when LDS bank conflicts occur on
amdgpu.
* The implementation is too fragile to be used on real-world code. For
example, the code bails out on any `memref.subview` in the root op, even
when the subview is not a user of any of the `memref.alloc` ops.

I do not see how these can be easily fixed, therefore I think it's
better to delete this code.


  Commit: 198ffb85314f7741ed048de67d68ca83bb30e16e
      https://github.com/llvm/llvm-project/commit/198ffb85314f7741ed048de67d68ca83bb30e16e
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/CXX/dcl.decl/dcl.meaning/p1-0x.cpp
    M clang/test/CXX/drs/dr28xx.cpp
    M clang/test/Parser/cxx-class.cpp

  Log Message:
  -----------
  [Clang][Sema] Implement approved resolution for CWG2858 (#88042)

The approved resolution for CWG2858 changes
[expr.prim.id.qual] p2 sentence 2 to read:
> A declarative _nested-name-specifier_ shall not have a
_computed-type-specifier_.

This patch implements the approved resolution. Since we don't consider
_nested-name-specifiers_ in friend declarations to be declarative (yet),
it currently isn't possible to write a test that would produce this
diagnostic (`diagnoseQualifiedDeclaration` is never called if the
`DeclContext` can't be computed). Nevertheless, tests were added which
will produce the diagnostic once we start calling
`diagnoseQualifiedDeclaration` for friend declarations.


  Commit: 298ea9bfd50ca41c77e45065700df06adb6264ae
      https://github.com/llvm/llvm-project/commit/298ea9bfd50ca41c77e45065700df06adb6264ae
  Author: Raghu Maddhipatla <7686592+raghavendhra at users.noreply.github.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/test/Lower/OpenMP/FIR/target.f90
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauseOperands.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir

  Log Message:
  -----------
   [Flang] [OpenMP] [MLIR] [Lowering] Add lowering support for IS_DEVICE_PTR and HAS_DEVICE_ADDR clauses on OMP TARGET directive.  (#88206)

Added lowering support for IS_DEVICE_PTR and HAS_DEVICE_ADDR clauses for
OMP TARGET directive and added related tests for these changes.

IS_DEVICE_PTR and HAS_DEVICE_ADDR clauses apply to OMP TARGET directive
OpenMP spec states

The **is_device_ptr** clause indicates that its list items are device
pointers.

The **has_device_addr** clause indicates that its list items already
have device addresses and therefore they may be directly accessed from a
target device.

Whereas USE_DEVICE_PTR and USE_DEVICE_ADDR clauses apply to OMP TARGET
DATA directive and OpenMP spec for them states

Each list item in the **use_device_ptr** clause results in a new list
item that is a device pointer that refers to a device address

Each list item in a **use_device_addr** clause that is present in the
device data environment is treated as if it is implicitly mapped by a
map clause on the construct with a map-type of alloc

Fixed build error caused by Squash merge which needs rebase


  Commit: ffb5bea2be9f966a39f243a7d8c2f48a1343cb4c
      https://github.com/llvm/llvm-project/commit/ffb5bea2be9f966a39f243a7d8c2f48a1343cb4c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-bitreverse.ll

  Log Message:
  -----------
  [X86] LowerBITREVERSE - support SSE-only GFNI i32/i64 bitreverse

Support Tremont CPUs which don't have AVX but do have GFNI.

Noticed while trying to workout how to clean up the costmodel for GFNI bitreverse


  Commit: 7ab7e7a55f3fce08ccd3cbcae94dabe99dd9e94a
      https://github.com/llvm/llvm-project/commit/7ab7e7a55f3fce08ccd3cbcae94dabe99dd9e94a
  Author: Xu Zhang <simonzgx at gmail.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M libc/docs/index.rst
    A libc/docs/signal.rst
    M libc/utils/docgen/docgen.py
    A libc/utils/docgen/signal.json

  Log Message:
  -----------
  [libc][docs] Generate docs for signal.h & optimized is_implemented func (#88028)


Fixes #87835

This patch added the documentation for the POSIX functions according to
[n3096](https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3096.pdf)
Section 7.14, and gives the *docgen.py* script a more elegant *is_implemented*
function.


  Commit: b63fe0d72e2df3b3c4b9fcb91aea07b2582be195
      https://github.com/llvm/llvm-project/commit/b63fe0d72e2df3b3c4b9fcb91aea07b2582be195
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M libcxx/include/__type_traits/copy_cv.h

  Log Message:
  -----------
  [libc++][NFC] Reduce the memory footprint of __copy_cv a bit (#87718)

Instead of instantiating `__copy_cv` for every combination of `_From`
and `_To` this only instantiates `__copy_cv` for every `_From` type,
reducing the number of instantiations.


  Commit: 72f9881c3ffcf4be6361c3e4312d91c9c8d94a98
      https://github.com/llvm/llvm-project/commit/72f9881c3ffcf4be6361c3e4312d91c9c8d94a98
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M libclc/CMakeLists.txt
    R libclc/cmake/CMakeCLCCompiler.cmake.in
    R libclc/cmake/CMakeCLCInformation.cmake
    R libclc/cmake/CMakeDetermineCLCCompiler.cmake
    R libclc/cmake/CMakeDetermineLLAsmCompiler.cmake
    R libclc/cmake/CMakeLLAsmCompiler.cmake.in
    R libclc/cmake/CMakeLLAsmInformation.cmake
    R libclc/cmake/CMakeTestCLCCompiler.cmake
    R libclc/cmake/CMakeTestLLAsmCompiler.cmake
    A libclc/cmake/modules/AddLibclc.cmake
    M libclc/generic/lib/SOURCES
    M llvm/tools/CMakeLists.txt

  Log Message:
  -----------
  [libclc] Refactor build system to allow in-tree builds (#87622)

The previous build system was adding custom "OpenCL" and "LLVM IR"
languages in CMake to build the builtin libraries. This was making it
harder to build in-tree because the tool binaries needed to be present
at configure time.

This commit refactors the build system to use custom commands to build
the bytecode files one by one, and link them all together into the final
bytecode library. It also enables in-tree builds by aliasing the
clang/llvm-link/etc. tool targets to internal targets, which are
imported from the LLVM installation directory when building out of tree.

Diffing (with llvm-diff) all of the final bytecode libraries in an
out-of-tree configuration against those built using the current tip
system shows no changes. Note that there are textual changes to metadata
IDs which confuse regular diff, and that llvm-diff 14 and below may show
false-positives.

This commit also removes a file listed in one of the SOURCEs which
didn't exist and which was preventing the use of
ENABLE_RUNTIME_SUBNORMAL when configuring CMake.


  Commit: 0d96422768908a8235f05a5d3b1d43ecc6038004
      https://github.com/llvm/llvm-project/commit/0d96422768908a8235f05a5d3b1d43ecc6038004
  Author: Derek Schuff <dschuff at chromium.org>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    A llvm/test/Object/Wasm/bad-data-symbol.yaml
    A llvm/test/Object/Wasm/bad-metadata-version.yaml
    A llvm/test/Object/Wasm/bad-reloc-type.test
    A llvm/test/Object/Wasm/bad-relocation.yaml
    A llvm/test/Object/Wasm/bad-symbol-type.test
    A llvm/test/Object/Wasm/duplicate-name.test
    A llvm/test/Object/Wasm/invalid-file.yaml
    A llvm/test/Object/Wasm/invalid-section-order.test
    A llvm/test/Object/Wasm/invalid-start.test
    A llvm/test/Object/Wasm/linked-namesec-with-linkingsec.yaml
    A llvm/test/Object/Wasm/linked-symbol-table.yaml
    A llvm/test/Object/Wasm/missing-version.test
    A llvm/test/Object/Wasm/obj2yaml-tables.test
    A llvm/test/Object/Wasm/relocs-and-producers.yaml
    A llvm/test/Object/Wasm/string-outside-section.test
    R llvm/test/Object/wasm-bad-data-symbol.yaml
    R llvm/test/Object/wasm-bad-metadata-version.yaml
    R llvm/test/Object/wasm-bad-reloc-type.test
    R llvm/test/Object/wasm-bad-relocation.yaml
    R llvm/test/Object/wasm-bad-symbol-type.test
    R llvm/test/Object/wasm-duplicate-name.test
    R llvm/test/Object/wasm-invalid-file.yaml
    R llvm/test/Object/wasm-invalid-section-order.test
    R llvm/test/Object/wasm-invalid-start.test
    R llvm/test/Object/wasm-linked-namesec-with-linkingsec.yaml
    R llvm/test/Object/wasm-linked-symbol-table.yaml
    R llvm/test/Object/wasm-missing-version.test
    R llvm/test/Object/wasm-obj2yaml-tables.test
    R llvm/test/Object/wasm-relocs-and-producers.yaml
    R llvm/test/Object/wasm-string-outside-section.test

  Log Message:
  -----------
  [Object][Wasm] Move wasm Object tests into their own directory (NFC) (#81072)


  Commit: 3c4b673af05f53e8a4d1a382b5c86367ea512c9e
      https://github.com/llvm/llvm-project/commit/3c4b673af05f53e8a4d1a382b5c86367ea512c9e
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M libcxx/include/stddef.h

  Log Message:
  -----------
  [libc++] Fix -Wgnu-include-next in stddef.h (#88214)

As reported in #86843, we must have #pragma GCC system_header before we
use #include_next, otherwise the compiler may not understand that we're
in a system header and may issue a diagnostic for our usage of


  Commit: 3d996a00c0b6bb857e29156e38496aed72021cf8
      https://github.com/llvm/llvm-project/commit/3d996a00c0b6bb857e29156e38496aed72021cf8
  Author: Michael Liao <michael.hliao at gmail.com>
  Date:   2024-04-11 (Thu, 11 Apr 2024)

  Changed paths:
    M bolt/include/bolt/Core/BinaryFunction.h
    M bolt/lib/Rewrite/BinaryPassManager.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/test/X86/patch-entries.test
    M clang-tools-extra/clangd/unittests/HoverTests.cpp
    M clang-tools-extra/include-cleaner/lib/FindHeaders.cpp
    M clang-tools-extra/include-cleaner/unittests/FindHeadersTest.cpp
    M clang/docs/ReleaseNotes.rst
    M clang/docs/tools/clang-formatted-files.txt
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclObjC.h
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/AST/ExternalASTSource.h
    M clang/include/clang/AST/NestedNameSpecifier.h
    R clang/include/clang/Analysis/FlowSensitive/ControlFlowContext.h
    M clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h
    M clang/include/clang/Analysis/SelectorExtras.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/IdentifierTable.h
    M clang/include/clang/Lex/ExternalPreprocessorSource.h
    M clang/include/clang/Lex/MacroInfo.h
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/CodeCompleteConsumer.h
    M clang/include/clang/Sema/DeclSpec.h
    M clang/include/clang/Sema/ParsedTemplate.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/lib/ARCMigrate/ObjCMT.cpp
    M clang/lib/ARCMigrate/TransAPIUses.cpp
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclObjC.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/NSAPI.cpp
    M clang/lib/AST/NestedNameSpecifier.cpp
    M clang/lib/AST/SelectorLocationsKind.cpp
    M clang/lib/AST/StmtPrinter.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
    M clang/lib/Analysis/FlowSensitive/Transfer.cpp
    M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
    M clang/lib/Analysis/ObjCNoReturn.cpp
    M clang/lib/Basic/IdentifierTable.cpp
    M clang/lib/Basic/Targets/X86.cpp
    M clang/lib/CodeGen/CGBlocks.cpp
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGObjC.cpp
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Format/FormatToken.h
    M clang/lib/Format/UnwrappedLineFormatter.cpp
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
    M clang/lib/Lex/HeaderSearch.cpp
    M clang/lib/Lex/MacroInfo.cpp
    M clang/lib/Lex/PPLexerChange.cpp
    M clang/lib/Lex/PPMacroExpansion.cpp
    M clang/lib/Lex/Preprocessor.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseObjc.cpp
    M clang/lib/Parse/ParseTemplate.cpp
    M clang/lib/Sema/CodeCompleteConsumer.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaCodeComplete.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaDeclObjC.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaExprObjC.cpp
    M clang/lib/Sema/SemaObjCProperty.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaPseudoObject.cpp
    M clang/lib/Sema/SemaStmt.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Serialization/ASTCommon.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp
    M clang/lib/StaticAnalyzer/Checkers/CheckObjCDealloc.cpp
    M clang/lib/StaticAnalyzer/Checkers/LocalizationChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCMissingSuperCallChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCSuperDeallocChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/PthreadLockChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/SimpleStreamChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ValistChecker.cpp
    M clang/lib/Tooling/CMakeLists.txt
    M clang/test/CXX/dcl.decl/dcl.meaning/p1-0x.cpp
    M clang/test/CXX/drs/dr28xx.cpp
    M clang/test/CodeGen/X86/avx-shuffle-builtins.c
    M clang/test/CodeGen/ms-intrinsics-other.c
    M clang/test/CodeGen/ms-intrinsics.c
    M clang/test/CodeGen/thinlto-distributed-cfi-devirt.ll
    M clang/test/CodeGen/thinlto-distributed-cfi.ll
    M clang/test/CodeGen/thinlto-funcattr-prop.ll
    M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
    M clang/test/Driver/arm-compiler-rt.c
    M clang/test/Driver/cl-link.c
    M clang/test/Driver/compiler-rt-unwind.c
    M clang/test/Driver/coverage-ld.c
    M clang/test/Driver/instrprof-ld.c
    M clang/test/Driver/linux-ld.c
    M clang/test/Driver/mingw-sanitizers.c
    M clang/test/Driver/msp430-toolchain.c
    M clang/test/Driver/print-libgcc-file-name-clangrt.c
    M clang/test/Driver/print-runtime-dir.c
    M clang/test/Driver/riscv32-toolchain-extra.c
    M clang/test/Driver/riscv32-toolchain.c
    M clang/test/Driver/riscv64-toolchain-extra.c
    M clang/test/Driver/riscv64-toolchain.c
    M clang/test/Driver/sanitizer-ld.c
    M clang/test/Driver/wasm-toolchain.c
    M clang/test/Driver/wasm-toolchain.cpp
    M clang/test/Driver/windows-cross.c
    M clang/test/Driver/zos-ld.c
    M clang/test/Headers/__clang_hip_math.hip
    M clang/test/Parser/cxx-class.cpp
    M clang/test/Preprocessor/x86_target_features.c
    M clang/tools/libclang/CIndexCodeCompletion.cpp
    M clang/unittests/Analysis/FlowSensitive/DataflowEnvironmentTest.cpp
    M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
    M clang/unittests/Format/BracesRemoverTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/FormatTestMacroExpansion.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp
    M compiler-rt/lib/builtins/riscv/restore.S
    M compiler-rt/lib/builtins/riscv/save.S
    M flang/docs/ModFiles.md
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
    M flang/module/iso_c_binding.f90
    M flang/test/Driver/msvc-dependent-lib-flags.f90
    A flang/test/Driver/predefined-macros-powerpc2.f90
    M flang/test/Lower/OpenMP/FIR/target.f90
    M flang/test/Lower/OpenMP/parallel-reduction-array.f90
    M flang/test/Lower/OpenMP/parallel-reduction-array2.f90
    M flang/test/Lower/OpenMP/parallel-reduction3.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-array-assumed-shape.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-array.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-array2.f90
    M flang/tools/f18/CMakeLists.txt
    M libc/docs/index.rst
    A libc/docs/signal.rst
    M libc/utils/docgen/docgen.py
    A libc/utils/docgen/signal.json
    M libclc/CMakeLists.txt
    R libclc/cmake/CMakeCLCCompiler.cmake.in
    R libclc/cmake/CMakeCLCInformation.cmake
    R libclc/cmake/CMakeDetermineCLCCompiler.cmake
    R libclc/cmake/CMakeDetermineLLAsmCompiler.cmake
    R libclc/cmake/CMakeLLAsmCompiler.cmake.in
    R libclc/cmake/CMakeLLAsmInformation.cmake
    R libclc/cmake/CMakeTestCLCCompiler.cmake
    R libclc/cmake/CMakeTestLLAsmCompiler.cmake
    A libclc/cmake/modules/AddLibclc.cmake
    M libclc/generic/lib/SOURCES
    M libcxx/include/__bit/countl.h
    M libcxx/include/__bit/countr.h
    M libcxx/include/__bit/popcount.h
    M libcxx/include/__type_traits/copy_cv.h
    M libcxx/include/stddef.h
    M lld/ELF/Arch/AArch64.cpp
    M lld/ELF/ICF.cpp
    M lld/ELF/InputSection.cpp
    M lld/test/ELF/aarch64-reloc-implicit-addend.test
    M lld/test/ELF/lto/comdat-nodeduplicate.ll
    M lldb/source/Plugins/ExpressionParser/Clang/ASTUtils.h
    M lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/CodeGen/DeadMachineInstructionElim.h
    M llvm/include/llvm/CodeGen/FreeMachineFunction.h
    M llvm/include/llvm/CodeGen/MIRPrinter.h
    M llvm/include/llvm/CodeGen/MachineCombinerPattern.h
    M llvm/include/llvm/CodeGen/MachinePassManager.h
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/IR/ModuleSummaryIndexYAML.h
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/include/llvm/Passes/PassBuilder.h
    M llvm/include/llvm/Passes/StandardInstrumentations.h
    A llvm/include/llvm/ProfileData/MemProfReader.h
    M llvm/include/llvm/ProfileData/RawMemProfReader.h
    M llvm/include/llvm/Transforms/Utils/SCCPSolver.h
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/MachineCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/TargetInstrInfo.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/DiagnosticInfo.cpp
    M llvm/lib/IR/ModuleSummaryIndex.cpp
    M llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/StandardInstrumentations.cpp
    M llvm/lib/ProfileData/CMakeLists.txt
    A llvm/lib/ProfileData/MemProfReader.cpp
    R llvm/lib/ProfileData/RawMemProfReader.cpp
    M llvm/lib/Support/raw_socket_stream.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.h
    M llvm/lib/Target/AArch64/AArch64PerfectShuffle.h
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.h
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.h
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrAsmAlias.td
    M llvm/lib/Target/X86/X86InstrCMovSetCC.td
    M llvm/lib/Target/X86/X86InstrControl.td
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrInfo.h
    M llvm/lib/Transforms/IPO/SCCP.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/Instrumentation/LowerAllowCheckPass.cpp
    M llvm/lib/Transforms/Utils/SCCPSolver.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Analysis/CostModel/AArch64/shuffle-other.ll
    M llvm/test/Analysis/CostModel/AArch64/shuffle-store.ll
    M llvm/test/Assembler/thinlto-memprof-summary.ll
    M llvm/test/Assembler/thinlto-multiple-summaries-for-guid.ll
    M llvm/test/Assembler/thinlto-summary-visibility.ll
    M llvm/test/Assembler/thinlto-summary.ll
    M llvm/test/Assembler/thinlto-vtable-summary.ll
    M llvm/test/Bitcode/thinlto-alias.ll
    M llvm/test/Bitcode/thinlto-func-summary-vtableref-pgo.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-relbf.ll
    M llvm/test/Bitcode/thinlto-function-summary-refgraph.ll
    M llvm/test/Bitcode/thinlto-index-disassembled-by-llvm-dis.ll
    M llvm/test/Bitcode/thinlto-type-tests.ll
    M llvm/test/Bitcode/thinlto-type-vcalls.ll
    A llvm/test/CodeGen/PowerPC/xxinsertw.ll
    M llvm/test/CodeGen/RISCV/rv64-patchpoint.ll
    A llvm/test/CodeGen/RISCV/rv64-statepoint-call-lowering-x1.ll
    A llvm/test/CodeGen/RISCV/rv64-statepoint-call-lowering-x2.ll
    A llvm/test/CodeGen/RISCV/rv64-statepoint-call-lowering.ll
    M llvm/test/CodeGen/RISCV/rvv/vsplats-fp.ll
    M llvm/test/CodeGen/WebAssembly/tls-general-dynamic.ll
    M llvm/test/CodeGen/WebAssembly/tls-local-exec.ll
    M llvm/test/CodeGen/X86/vector-bitreverse.ll
    M llvm/test/MC/Disassembler/X86/apx/evex-format.txt
    A llvm/test/MC/Disassembler/X86/apx/setcc.txt
    A llvm/test/MC/Disassembler/X86/apx/setzucc.txt
    M llvm/test/MC/X86/apx/evex-format-att.s
    M llvm/test/MC/X86/apx/evex-format-intel.s
    A llvm/test/MC/X86/apx/setcc-att.s
    A llvm/test/MC/X86/apx/setcc-intel.s
    A llvm/test/MC/X86/apx/setzucc-att.s
    A llvm/test/MC/X86/apx/setzucc-intel.s
    A llvm/test/Object/Wasm/bad-data-symbol.yaml
    A llvm/test/Object/Wasm/bad-metadata-version.yaml
    A llvm/test/Object/Wasm/bad-reloc-type.test
    A llvm/test/Object/Wasm/bad-relocation.yaml
    A llvm/test/Object/Wasm/bad-symbol-type.test
    A llvm/test/Object/Wasm/duplicate-name.test
    A llvm/test/Object/Wasm/invalid-file.yaml
    A llvm/test/Object/Wasm/invalid-section-order.test
    A llvm/test/Object/Wasm/invalid-start.test
    A llvm/test/Object/Wasm/linked-namesec-with-linkingsec.yaml
    A llvm/test/Object/Wasm/linked-symbol-table.yaml
    A llvm/test/Object/Wasm/missing-version.test
    A llvm/test/Object/Wasm/obj2yaml-tables.test
    A llvm/test/Object/Wasm/relocs-and-producers.yaml
    A llvm/test/Object/Wasm/string-outside-section.test
    R llvm/test/Object/wasm-bad-data-symbol.yaml
    R llvm/test/Object/wasm-bad-metadata-version.yaml
    R llvm/test/Object/wasm-bad-reloc-type.test
    R llvm/test/Object/wasm-bad-relocation.yaml
    R llvm/test/Object/wasm-bad-symbol-type.test
    R llvm/test/Object/wasm-duplicate-name.test
    R llvm/test/Object/wasm-invalid-file.yaml
    R llvm/test/Object/wasm-invalid-section-order.test
    R llvm/test/Object/wasm-invalid-start.test
    R llvm/test/Object/wasm-linked-namesec-with-linkingsec.yaml
    R llvm/test/Object/wasm-linked-symbol-table.yaml
    R llvm/test/Object/wasm-missing-version.test
    R llvm/test/Object/wasm-obj2yaml-tables.test
    R llvm/test/Object/wasm-relocs-and-producers.yaml
    R llvm/test/Object/wasm-string-outside-section.test
    A llvm/test/Other/ChangePrinters/DotCfg/print-changed-dot-cfg.mir
    A llvm/test/Other/change-printer.mir
    M llvm/test/TableGen/x86-fold-tables.inc
    M llvm/test/ThinLTO/X86/dot-dumper.ll
    M llvm/test/ThinLTO/X86/funcattrs-prop-maythrow.ll
    M llvm/test/ThinLTO/X86/funcimport_alwaysinline.ll
    M llvm/test/ThinLTO/X86/load-store-caching.ll
    M llvm/test/Transforms/InstCombine/RISCV/riscv-vsetvli-knownbits.ll
    M llvm/test/Transforms/InstCombine/RISCV/riscv-vsetvlimax-knownbits.ll
    M llvm/test/Transforms/InstCombine/add.ll
    M llvm/test/Transforms/InstCombine/binop-itofp.ll
    M llvm/test/Transforms/InstCombine/bswap-fold.ll
    M llvm/test/Transforms/InstCombine/bswap.ll
    M llvm/test/Transforms/InstCombine/cast.ll
    M llvm/test/Transforms/InstCombine/cmp-intrinsic.ll
    M llvm/test/Transforms/InstCombine/compare-signs.ll
    M llvm/test/Transforms/InstCombine/ctpop.ll
    M llvm/test/Transforms/InstCombine/extractelement-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/extractelement.ll
    M llvm/test/Transforms/InstCombine/ffs-1.ll
    M llvm/test/Transforms/InstCombine/fls.ll
    M llvm/test/Transforms/InstCombine/fold-log2-ceil-idiom.ll
    M llvm/test/Transforms/InstCombine/high-bit-signmask-with-trunc.ll
    M llvm/test/Transforms/InstCombine/icmp-div-constant.ll
    M llvm/test/Transforms/InstCombine/icmp-mul-zext.ll
    M llvm/test/Transforms/InstCombine/icmp-of-trunc-ext.ll
    M llvm/test/Transforms/InstCombine/icmp-topbitssame.ll
    M llvm/test/Transforms/InstCombine/insert-trunc.ll
    M llvm/test/Transforms/InstCombine/insertelt-trunc.ll
    M llvm/test/Transforms/InstCombine/known-bits.ll
    M llvm/test/Transforms/InstCombine/known-non-zero.ll
    M llvm/test/Transforms/InstCombine/known-phi-recurse.ll
    M llvm/test/Transforms/InstCombine/logical-select-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/logical-select.ll
    M llvm/test/Transforms/InstCombine/lshr-trunc-sext-to-ashr-sext.ll
    M llvm/test/Transforms/InstCombine/lshr.ll
    M llvm/test/Transforms/InstCombine/merging-multiple-stores-into-successor.ll
    M llvm/test/Transforms/InstCombine/narrow.ll
    M llvm/test/Transforms/InstCombine/negated-bitmask.ll
    M llvm/test/Transforms/InstCombine/pr34349.ll
    M llvm/test/Transforms/InstCombine/reduction-add-sext-zext-i1.ll
    M llvm/test/Transforms/InstCombine/sadd_sat.ll
    M llvm/test/Transforms/InstCombine/select-cmp-cttz-ctlz.ll
    M llvm/test/Transforms/InstCombine/select-imm-canon.ll
    M llvm/test/Transforms/InstCombine/select.ll
    M llvm/test/Transforms/InstCombine/sext-of-trunc-nsw.ll
    M llvm/test/Transforms/InstCombine/sext.ll
    M llvm/test/Transforms/InstCombine/shift-add.ll
    M llvm/test/Transforms/InstCombine/shift-amount-reassociation-in-bittest-with-truncation-lshr.ll
    M llvm/test/Transforms/InstCombine/shift-amount-reassociation-with-truncation-ashr.ll
    M llvm/test/Transforms/InstCombine/shift-amount-reassociation-with-truncation-lshr.ll
    M llvm/test/Transforms/InstCombine/shift-shift.ll
    M llvm/test/Transforms/InstCombine/shift.ll
    M llvm/test/Transforms/InstCombine/shl-demand.ll
    M llvm/test/Transforms/InstCombine/sign-bit-test-via-right-shifting-all-other-bits.ll
    M llvm/test/Transforms/InstCombine/trunc-demand.ll
    M llvm/test/Transforms/InstCombine/trunc-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/trunc-shift-trunc.ll
    M llvm/test/Transforms/InstCombine/trunc.ll
    M llvm/test/Transforms/InstCombine/truncating-saturate.ll
    M llvm/test/Transforms/InstCombine/vector-trunc.ll
    M llvm/test/Transforms/InstCombine/xor-ashr.ll
    M llvm/test/Transforms/InstCombine/zext-ctlz-trunc-to-ctlz-add.ll
    A llvm/test/Transforms/InstSimplify/pr87042.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/deterministic-type-shrinkage.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/intrinsiccost.ll
    M llvm/test/Transforms/LoopVectorize/X86/intrinsiccost.ll
    M llvm/test/Transforms/LoopVectorize/reduction.ll
    M llvm/test/Transforms/LowerTypeTests/import-unsat.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/quant_4x4.ll
    M llvm/test/Transforms/PhaseOrdering/X86/pr67803.ll
    A llvm/test/Transforms/SCCP/range-attribute.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr46983.ll
    M llvm/test/Transforms/VectorCombine/AArch64/vecreduce-shuffle.ll
    A llvm/test/Transforms/VectorCombine/X86/pr67803.ll
    M llvm/test/Transforms/VectorCombine/X86/shuffle-of-casts.ll
    M llvm/test/Transforms/VectorCombine/X86/shuffle.ll
    M llvm/test/Transforms/WholeProgramDevirt/Inputs/import-indir.yaml
    M llvm/test/Transforms/WholeProgramDevirt/import-indir.ll
    A llvm/test/Transforms/lower-builtin-allow-check-remarks.ll
    M llvm/tools/CMakeLists.txt
    M llvm/tools/llvm-mca/CMakeLists.txt
    M llvm/tools/llvm-profdata/llvm-profdata.cpp
    M llvm/tools/llvm-profgen/PerfReader.cpp
    M llvm/tools/llvm-profgen/PerfReader.h
    M llvm/unittests/MIR/PassBuilderCallbacksTest.cpp
    M llvm/unittests/ProfileData/MemProfTest.cpp
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp
    M llvm/utils/gn/secondary/clang/unittests/AST/Interp/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/src/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/ProfileData/BUILD.gn
    M mlir/include/mlir/Dialect/AMDGPU/CMakeLists.txt
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
    R mlir/include/mlir/Dialect/AMDGPU/TransformOps/AMDGPUTransformOps.h
    R mlir/include/mlir/Dialect/AMDGPU/TransformOps/AMDGPUTransformOps.td
    R mlir/include/mlir/Dialect/AMDGPU/TransformOps/CMakeLists.txt
    M mlir/include/mlir/Dialect/AMDGPU/Transforms/Passes.h
    M mlir/include/mlir/Dialect/AMDGPU/Transforms/Passes.td
    R mlir/include/mlir/Dialect/AMDGPU/Transforms/Transforms.h
    R mlir/include/mlir/Dialect/AMDGPU/Transforms/Utils.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauseOperands.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/include/mlir/InitAllExtensions.h
    M mlir/include/mlir/Interfaces/ValueBoundsOpInterface.h
    M mlir/lib/Conversion/ComplexToStandard/ComplexToStandard.cpp
    M mlir/lib/Dialect/AMDGPU/CMakeLists.txt
    M mlir/lib/Dialect/AMDGPU/IR/AMDGPUDialect.cpp
    R mlir/lib/Dialect/AMDGPU/TransformOps/AMDGPUTransformOps.cpp
    R mlir/lib/Dialect/AMDGPU/TransformOps/CMakeLists.txt
    M mlir/lib/Dialect/AMDGPU/Transforms/CMakeLists.txt
    R mlir/lib/Dialect/AMDGPU/Transforms/OptimizeSharedMemory.cpp
    R mlir/lib/Dialect/AMDGPU/Transforms/Utils.cpp
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Dialect/SCF/IR/ValueBoundsOpInterfaceImpl.cpp
    M mlir/lib/Interfaces/ValueBoundsOpInterface.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/Conversion/ComplexToStandard/convert-to-standard.mlir
    M mlir/test/Conversion/ComplexToStandard/full-conversion.mlir
    R mlir/test/Dialect/AMDGPU/optimize_shmem_reads_writes.mlir
    R mlir/test/Dialect/AMDGPU/transform_optimize_shmem_reads_writes.mlir
    M mlir/test/Dialect/Affine/value-bounds-op-interface-impl.mlir
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Dialect/SCF/value-bounds-op-interface-impl.mlir
    M mlir/test/Dialect/Tensor/value-bounds-op-interface-impl.mlir
    M mlir/test/Target/LLVMIR/openmp-parallel-reduction-cleanup.mlir
    M mlir/test/Target/LLVMIR/openmp-wsloop-reduction-cleanup.mlir
    M mlir/test/lib/Dialect/Affine/TestReifyValueBounds.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  rebase

Created using spr 1.3.4


Compare: https://github.com/llvm/llvm-project/compare/fba908497717...3d996a00c0b6

To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list