[all-commits] [llvm/llvm-project] f0b328: [sanitizer] Disable new test on powerpc64le (#108505)

Vitaly Buka via All-commits all-commits at lists.llvm.org
Fri Sep 13 20:08:06 PDT 2024


  Branch: refs/heads/users/vitalybuka/spr/sanitizer-fix-intersecting-stacks-workaround
  Home:   https://github.com/llvm/llvm-project
  Commit: f0b3287297aeeddcf030e3c1b08d05a69ad465aa
      https://github.com/llvm/llvm-project/commit/f0b3287297aeeddcf030e3c1b08d05a69ad465aa
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M compiler-rt/test/sanitizer_common/TestCases/Linux/tls_get_addr.c

  Log Message:
  -----------
  [sanitizer] Disable new test on powerpc64le (#108505)

The reason is not clear
https://lab.llvm.org/buildbot/#/builders/72/builds/3260

The test was introduced in #108349.


  Commit: 57aaf5ec9fbcf736daf742d2cbcf103b6df65881
      https://github.com/llvm/llvm-project/commit/57aaf5ec9fbcf736daf742d2cbcf103b6df65881
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp

  Log Message:
  -----------
  [RISCV] Use MCRegister in RISCVMCInstrAnalysis. NFC


  Commit: 520ddf22b2270dc092dbdbd391b1c02c403b475a
      https://github.com/llvm/llvm-project/commit/520ddf22b2270dc092dbdbd391b1c02c403b475a
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp

  Log Message:
  -----------
  [TableGen] Remove duplicate code in applyMnemonicAliases when target uses DefaultAsmParserVariant. (#108494)

The DefaultAsmParserVariant has an empty name. MnemonicAlias uses an
empty string to mean the alias applies to all variants.

Targets that uses DefaultAsmParserVariant were emitting the same code
inside the variant loop and after the variant loop because an empty
string got passed to emitMnemonicAliasVariant in both places.

This patch detects the empty variant name in the loop and skips the
emission.


  Commit: c0e308ba3d8ac252b8118d94a17b1351ca92b813
      https://github.com/llvm/llvm-project/commit/c0e308ba3d8ac252b8118d94a17b1351ca92b813
  Author: David Green <david.green at arm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/test/Transforms/InstCombine/pow-1.ll

  Log Message:
  -----------
  [InstCombine] Pass DomTree and DomTreeCacheto LibCallSimplifier (#108446)

This allows any combines to pick up Known states from dominating
conditions.


  Commit: 940f89255e4a3982d94dad57837e8e658092af78
      https://github.com/llvm/llvm-project/commit/940f89255e4a3982d94dad57837e8e658092af78
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/getelementptr.ll

  Log Message:
  -----------
  [InstCombine] Do not modify GEP in place

This was modifying the GEP in place, with code to adjust the
inbounds flag. This was correct at the time, but now fails to
account for other GEP flags like nuw, leading to miscompilations.

Remove the special case, and always create a new GEP instruction.
Logic for preserving nuw in the cases where it is valid will be
added in a followup patch.


  Commit: cdd608b8f0ce090b3568238387df368751bdbb5d
      https://github.com/llvm/llvm-project/commit/cdd608b8f0ce090b3568238387df368751bdbb5d
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M libcxx/test/std/time/time.zone/time.zone.timezone/time.zone.members/sys_info.zdump.pass.cpp

  Log Message:
  -----------
  [libcxx][test] Use smaller time range for 32 bit time_t (#104762)

This fixes the test on Arm 32 bit Ubuntu Jammy where time_t is 32 bit.


  Commit: cd392420322f9968f76cd7f4afb6726d5912b236
      https://github.com/llvm/llvm-project/commit/cd392420322f9968f76cd7f4afb6726d5912b236
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp

  Log Message:
  -----------
  [InstCombine] Remove no longer needed constant offset case (NFCI)

Now that we canonicalize constant geps to i8 type, this special
handling should no longer be needed.


  Commit: 991c842b38ec829d7a4bda432555673a310b777e
      https://github.com/llvm/llvm-project/commit/991c842b38ec829d7a4bda432555673a310b777e
  Author: Pankaj Dwivedi <pankajkumar.divedi at amd.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32-wave32.mir

  Log Message:
  -----------
  [AMDGPU] eliminate frame index v_add wave32 test (#107832)

PR: #102346  v_add_u32_e64  test cases for wave32


  Commit: 127c34948bd54e92ef2ee544e8bc42acecf321ad
      https://github.com/llvm/llvm-project/commit/127c34948bd54e92ef2ee544e8bc42acecf321ad
  Author: Konstantin Varlamov <varconsteq at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M libcxx/include/chrono

  Log Message:
  -----------
  Guard an include of `<ostream>` in `<chrono>` with availability macro (#108429)

This fixes a regression introduced in
https://github.com/llvm/llvm-project/pull/96035.


  Commit: 5d1d2f08c4a92580e7f6b3b6b77b2b6f6184e126
      https://github.com/llvm/llvm-project/commit/5d1d2f08c4a92580e7f6b3b6b77b2b6f6184e126
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/AST/ByteCode/cxx20.cpp
    M clang/test/SemaCXX/constant-expression-cxx11.cpp

  Log Message:
  -----------
  [clang][ExprConst] Allow comparisons with string literals (#106733)

Don't diagnose them, but literals still have distinct addresses.

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


  Commit: 09a4c23eb410d4be52202bed21c967a3653c3544
      https://github.com/llvm/llvm-project/commit/09a4c23eb410d4be52202bed21c967a3653c3544
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/CodeGen/EarlyIfConversion.cpp

  Log Message:
  -----------
  [NFC][EarlyIfConverter] Turn SSAIfConv into a local variable (#107390)


  Commit: c78d056350b43a8357bebd15d1c4e6a097549776
      https://github.com/llvm/llvm-project/commit/c78d056350b43a8357bebd15d1c4e6a097549776
  Author: braw-lee <93831198+braw-lee at users.noreply.github.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/BranchProbabilityInfo.h

  Log Message:
  -----------
  [llvm] Fix typo in comments (#108230)

Fixes #107949

Signed-off-by: Kushal Pal <kushalpal109 at gmail.com>


  Commit: 1b57cbcf25fcc55235f9331535aef05324b6ca54
      https://github.com/llvm/llvm-project/commit/1b57cbcf25fcc55235f9331535aef05324b6ca54
  Author: Igor Kirillov <igor.kirillov at arm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/AArch64/shrink-types.ll

  Log Message:
  -----------
  [VectorCombine] Refactor Insertion Point setting in shrinkType (#108398)


  Commit: a0f88901a4e6a6618c3ec02108103d0415e28834
      https://github.com/llvm/llvm-project/commit/a0f88901a4e6a6618c3ec02108103d0415e28834
  Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDecl.cpp
    A clang/test/C/C23/n3029.c
    M clang/test/Misc/warning-flags.c
    M clang/test/Sema/enum.c
    M clang/www/c_status.html

  Log Message:
  -----------
  [clang][C23] Support N3029 Improved Normal Enumerations (#103917)

Basically clang already implemented 90% of the feature as an extension.
This commit disables warnings for C23 and aligns types of enumerators
according to the recent wording.


  Commit: 1c298c927498983dee29037ed1d3e71b72ca0082
      https://github.com/llvm/llvm-project/commit/1c298c927498983dee29037ed1d3e71b72ca0082
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/test/CodeGen/attr-counted-by.c
    M clang/test/OpenMP/bug57757.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/getelementptr.ll

  Log Message:
  -----------
  [InstCombine] Preserve nuw flags when merging geps

These transforms all perform a variant of (gep (gep p, x), y)
to (gep p, (x + y)). We can preserve both inbounds and nuw
during such transforms (https://alive2.llvm.org/ce/z/Stu4cN), but
not nusw, which would require proving that the new add is nsw.

For the constant offset case, I've conservatively retained the
logic that checks for negative intermediate offsets, though I'm
not sure it's still reachable nowadays.


  Commit: 069b841c2ecde39c65ca74660b681d4d25a4bbb2
      https://github.com/llvm/llvm-project/commit/069b841c2ecde39c65ca74660b681d4d25a4bbb2
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/stackTrace/subtleFrames/Makefile

  Log Message:
  -----------
  [lldb] Make sure TestDAP_subtleFrames actually uses libc++ (#108227)

Without this, the binary would still be built with libstdc++, if that's
the system/compiler default.


  Commit: e054712a85f924e0afe7f180fd960be7a8214d64
      https://github.com/llvm/llvm-project/commit/e054712a85f924e0afe7f180fd960be7a8214d64
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py

  Log Message:
  -----------
  [lldb] Deflake TestDAP_attach (#108226)

The test failed in
<https://lab.llvm.org/buildbot/#/builders/162/builds/5785> due to frame
variable not being in stop commands, even though the DAP log shows the
command being present there. I'm pretty sure this is a race in the test
the collection of the test log. I fix that by making sure we wait for
the expected output, and also by increasing the timeout (1s is cutting
it very close).

The arm failure link is no longer functional, but I'm fairly certain
that this was the cause of those flakes as well.


  Commit: fbf0a8015389bccab80bba00be49955079913152
      https://github.com/llvm/llvm-project/commit/fbf0a8015389bccab80bba00be49955079913152
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/hlsl.hlsl

  Log Message:
  -----------
  [clang][bytecode] Implement HLSLVectorTruncation casts (#108499)


  Commit: e7f782e7481cea23ef452a75607d3d61f5bd0d22
      https://github.com/llvm/llvm-project/commit/e7f782e7481cea23ef452a75607d3d61f5bd0d22
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang-tools-extra/clangd/Diagnostics.cpp
    M clang-tools-extra/clangd/Diagnostics.h
    M clang-tools-extra/clangd/ParsedAST.cpp
    M clang-tools-extra/clangd/Preamble.cpp
    M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/Diagnostic.h
    M clang/include/clang/Basic/DiagnosticCategories.h
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Frontend/LogDiagnosticPrinter.cpp
    M clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
    M clang/lib/Frontend/TextDiagnosticPrinter.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/StaticAnalyzer/Core/TextDiagnostics.cpp
    M clang/test/Sema/diagnose_if.c
    A clang/test/SemaCXX/diagnose_if-warning-group.cpp
    M clang/tools/diagtool/ListWarnings.cpp
    M clang/tools/diagtool/ShowEnabledWarnings.cpp
    M clang/tools/libclang/CXStoredDiagnostic.cpp
    M flang/lib/Frontend/TextDiagnosticPrinter.cpp

  Log Message:
  -----------
  Reapply "[clang] Extend diagnose_if to accept more detailed warning information (#70976)" (#108453)

This reverts commit e0cd11eba526234ca14a0b91f5598ca3363b6aca.

Update the use of `getWarningOptionForDiag` in flang to use the
DiagnosticIDs.


  Commit: 2fb133f32af42b29e1e1bbbbc24fb75eea3f34a2
      https://github.com/llvm/llvm-project/commit/2fb133f32af42b29e1e1bbbbc24fb75eea3f34a2
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M libcxx/docs/ReleaseNotes/20.rst

  Log Message:
  -----------
  [libc++][NFC] Reflow release notes

There are a few lines in the release notes which are much wider than the
120 columns we usually use. This reflows the text to keep it below the
threshold.


  Commit: d4f6ad51603405ab4e998fa6416bfdff4b1f43d4
      https://github.com/llvm/llvm-project/commit/d4f6ad51603405ab4e998fa6416bfdff4b1f43d4
  Author: Youngsuk Kim <joseph942010 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/tools/llvm-size/llvm-size.cpp

  Log Message:
  -----------
  [llvm-size] Avoid unneeded uses of 'raw_string_ostream::str' (NFC) (#108490)

Remove unnecessary layer of indirection.


  Commit: 335620853117153e52ce54fe4e879f66aa23ff99
      https://github.com/llvm/llvm-project/commit/335620853117153e52ce54fe4e879f66aa23ff99
  Author: Diana Picus <Diana-Magda.Picus at amd.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w32.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w64.ll
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain.mir
    A llvm/test/CodeGen/AMDGPU/si-init-whole-wave.mir
    M llvm/test/CodeGen/MIR/AMDGPU/long-branch-reg-all-sgpr-used.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-after-pei.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg-debug.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-no-ir.mir
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info.ll

  Log Message:
  -----------
  Reland "[amdgpu] Add llvm.amdgcn.init.whole.wave intrinsic" (#108512)

This reverts commit
https://github.com/llvm/llvm-project/commit/7792b4ae79e5ac9355ee13b01f16e25455f8427f.

The problem was a conflict with
https://github.com/llvm/llvm-project/commit/e55d6f5ea2656bf842973d8bee86c3ace31bc865
"[AMDGPU] Simplify and improve codegen for llvm.amdgcn.set.inactive
(https://github.com/llvm/llvm-project/pull/107889)"
which changed the syntax of V_SET_INACTIVE (and thus made my MIR test
crash).

...if only we had a merge queue.


  Commit: 637aa61732c5bda7cbcf94e5f08fb3a44655cef0
      https://github.com/llvm/llvm-project/commit/637aa61732c5bda7cbcf94e5f08fb3a44655cef0
  Author: David Green <david.green at arm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/test/CodeGen/ARM/big-endian-vmov.ll
    M llvm/test/CodeGen/Thumb2/mve-vmovimm.ll

  Log Message:
  -----------
  [ARM] Fix VBICimm and VORRimm generation under Big endian. (#107813)

This is a smaller follow on to #105519 that fixes VBICimm and VORRimm
too. The logic behind lowering vector immediates under big endian
Neon/MVE is to treat them in natural lane ordering (same as little
endian), and VECTOR_REG_CAST them to the correct type (as opposed to
creating the constants in big endian form and bitcasting them). This
makes sure that is done when creating VORRIMM and VBICIMM.


  Commit: 4ca8fb18129e6465c3594a8681f1cca0e2aff724
      https://github.com/llvm/llvm-project/commit/4ca8fb18129e6465c3594a8681f1cca0e2aff724
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/TestDataFormatterLibcxxStringSimulator.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/main.cpp

  Log Message:
  -----------
  [lldb][test] TestDataFormatterLibcxxStringSimulator.py: fix padding for current layout (#108362)

IIUC, the history of `std::string`'s `__short` structure in the
alternate ABI layout (as recorded by the simulator test) looks as
follows:
* First layout ( `SUBCLASS_PADDING` is defined):
```
     struct __short                                          
     {                                                       
         value_type __data_[__min_cap];                      
        struct                                              
            : __padding<value_type>                         
        {                                                   
            unsigned char __size_;                          
        };
     };                                      
```
* Then:
```
     struct __short                                         
     {                                                      
        value_type __data_[__min_cap];                                                               
        unsigned char __padding[sizeof(value_type) - 1];   
        unsigned char __size_;                             
     };
```
* Then, post-`BITMASKS`:
```
     struct __short                                         
     {                                                      
        value_type __data_[__min_cap];                                                               
        unsigned char __padding[sizeof(value_type) - 1];   
        unsigned char __size_ : 7;
        unsigned char __is_long_ : 1;                             
     };
```

Which is the one that's [on
top-of-tree](https://github.com/llvm/llvm-project/blob/89c10e27d8b4d5f44998aad9abd2590d9f96c5df/libcxx/include/string#L854-L859).

But for `REVISION > 1`, `BITMASKS` is never set, so for those tests we
lose the `__padding` member.

This patch fixes this by splitting out the `SUBCLASS_PADDING` out of the
ifdef.

Drive-by:
* Also run expression evaluator on the string to provide is with some
extra coverage.


  Commit: 9cd93774098c861c260090a690f428b7ae031c65
      https://github.com/llvm/llvm-project/commit/9cd93774098c861c260090a690f428b7ae031c65
  Author: Piyou Chen <piyou.chen at sifive.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/TargetInfo.h
    M clang/include/clang/Sema/SemaRISCV.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/Basic/Targets/RISCV.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/Targets/RISCV.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaRISCV.cpp
    A clang/test/CodeGen/attr-target-clones-riscv-invalid.c
    A clang/test/CodeGen/attr-target-clones-riscv.c
    A clang/test/CodeGenCXX/attr-target-clones-riscv.cpp
    A clang/test/SemaCXX/attr-target-clones-riscv.cpp

  Log Message:
  -----------
  [RISCV][FMV] Support target_clones (#85786)

This patch enable the function multiversion(FMV) and `target_clones`
attribute for RISC-V target.

The proposal of `target_clones` syntax can be found at the
https://github.com/riscv-non-isa/riscv-c-api-doc/pull/48 (which has
landed), as modified by the proposed
https://github.com/riscv-non-isa/riscv-c-api-doc/pull/85 (which adds the
priority syntax).

It supports the `target_clones` function attribute and function
multiversioning feature for RISC-V target. It will generate the ifunc
resolver function for the function that declared with target_clones
attribute.

The resolver function will check the version support by runtime object
`__riscv_feature_bits`.

For example:

```
__attribute__((target_clones("default", "arch=+ver1", "arch=+ver2"))) int bar() {
    return 1;
}
```

the corresponding resolver will be like:

```
bar.resolver() {
    __init_riscv_feature_bits();
    // Check arch=+ver1
    if ((__riscv_feature_bits.features[0] & BITMASK_OF_VERSION1) == BITMASK_OF_VERSION1) {
        return bar.arch=+ver1;
    } else {
        // Check arch=+ver2
        if ((__riscv_feature_bits.features[0] & BITMASK_OF_VERSION2) == BITMASK_OF_VERSION2) {
            return bar.arch=+ver2;
        } else {
            // Default
            return bar.default;
        }
    }
}
```


  Commit: 6c0b1e75e367e73cc6d1b59d557f513beb34afd0
      https://github.com/llvm/llvm-project/commit/6c0b1e75e367e73cc6d1b59d557f513beb34afd0
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/tools/llvm-debuginfo-analyzer/llvm-debuginfo-analyzer.cpp
    M llvm/tools/llvm-libtool-darwin/llvm-libtool-darwin.cpp
    M llvm/tools/llvm-lipo/llvm-lipo.cpp
    M llvm/tools/llvm-readobj/ARMWinEHPrinter.cpp
    M llvm/tools/llvm-xray/xray-graph.cpp

  Log Message:
  -----------
  [llvm][tools] Strip unneeded uses of raw_string_ostream::str() (NFC)

Remove unnecessary layer of indirection.


  Commit: ebbc9ed2d60cacffc87232dc32374a2b38b92175
      https://github.com/llvm/llvm-project/commit/ebbc9ed2d60cacffc87232dc32374a2b38b92175
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/include/lldb/Host/Socket.h
    M lldb/include/lldb/Host/common/TCPSocket.h
    M lldb/include/lldb/Host/common/UDPSocket.h
    M lldb/include/lldb/Host/posix/DomainSocket.h
    M lldb/source/Host/common/Socket.cpp
    M lldb/source/Host/common/TCPSocket.cpp
    M lldb/source/Host/common/UDPSocket.cpp
    M lldb/source/Host/posix/DomainSocket.cpp
    M lldb/unittests/Host/SocketTest.cpp

  Log Message:
  -----------
  [lldb] Add a MainLoop version of DomainSocket::Accept (#108188)

To go along with the existing TCPSocket implementation.


  Commit: f3029b330ad0ddc8e82a9837cdcc8a7c81cd2602
      https://github.com/llvm/llvm-project/commit/f3029b330ad0ddc8e82a9837cdcc8a7c81cd2602
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [NFC][LoopVectorize] Avoid passing ScalarEvolution to VPlanTransforms::optimize (#108380)

Whilst trying to write some VPlan unit tests I realised
that we don't need to pass a ScalarEvolution object into
VPlanTransforms::optimize because the only thing we
actually need is a LLVMContext.


  Commit: eb11f576a4ffe9cc77d2010b5449bd7780472e2d
      https://github.com/llvm/llvm-project/commit/eb11f576a4ffe9cc77d2010b5449bd7780472e2d
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/tools/dsymutil/MachODebugMapParser.cpp
    M llvm/tools/llvm-dwarfdump/Statistics.cpp
    M llvm/tools/llvm-readobj/ELFDumper.cpp

  Log Message:
  -----------
  [llvm][tools] Strip unneeded uses of raw_string_ostream::str() (NFC)

Remove excess layer of indirection.


  Commit: 7574e1ddc4be63628cb7617857cc8938058a79d2
      https://github.com/llvm/llvm-project/commit/7574e1ddc4be63628cb7617857cc8938058a79d2
  Author: Andrew Ng <andrew.ng at sony.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
    M llvm/test/tools/llvm-ml/rip_relative_addressing.asm

  Log Message:
  -----------
  Reland [llvm-ml] Fix RIP-relative addressing for ptr operands (#108061)

Relands #107618 with fix for assertion triggered by OpenMP runtime MASM
assembly source.


  Commit: 992a64aad388b4e809ac3123ea1d48fed4f35244
      https://github.com/llvm/llvm-project/commit/992a64aad388b4e809ac3123ea1d48fed4f35244
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/include/clang/Basic/AArch64SVEACLETypes.def
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_add.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_add_sub_za16.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_clamp.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvtl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvtn.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_faminmax.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_fmlas16.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_fp_dots.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_frint.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_int_dots.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_max.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_maxnm.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_min.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_minnm.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mla.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlal.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlall.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mls.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlsl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_read.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sqdmulh.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sub.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vdot.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_add.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_qrshr.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_rshl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_write.c
    M clang/test/CodeGen/aarch64-sme2p1-intrinsics/acle_sme2p1_movaz.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_reinterpret-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_reinterpret.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef4.c
    M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_luti.c
    M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_tbl2-bfloat.c
    M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_tbl2.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_create2_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_create4_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_get2_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_get4_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_ld1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_ldnt1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_loads.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_pext.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_qcvtn.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_qrshr.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_set2_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_set4_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_st1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_stnt1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_store.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_undef_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_while_x2.c
    M clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_get_neonq.c
    M clang/test/CodeGen/svboolx2_t.cpp
    M clang/test/CodeGen/svboolx4_t.cpp
    M clang/test/CodeGenCXX/aarch64-mangle-sve-vectors.cpp
    M clang/test/CodeGenCXX/aarch64-sve-vector-init.cpp

  Log Message:
  -----------
  [Clang][SVE] Change LLVM representation of ACLE tuple types to be struct based. (#108008)

This implements our original design now that LLVM is comfortable with
structs and arrays of scalable vector types. All SVE ACLE intrinsics
already use struct types so the effect of this change is purely the
types used for alloca and function parameters.
    
There should be no C/C++ user visible change with this patch.


  Commit: 8e10a3f80e264aaa186ab3cc74fea840f453c66d
      https://github.com/llvm/llvm-project/commit/8e10a3f80e264aaa186ab3cc74fea840f453c66d
  Author: Mats Petersson <mats.petersson at arm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    A flang/test/Lower/OpenMP/shared-loop.f90
    M flang/test/Semantics/OpenMP/do20.f90
    M flang/test/Semantics/OpenMP/implicit-dsa.f90
    M flang/test/Semantics/OpenMP/symbol01.f90
    M flang/test/Semantics/OpenMP/symbol02.f90
    M flang/test/Semantics/OpenMP/symbol03.f90
    M flang/test/Semantics/OpenMP/symbol07.f90
    M flang/test/Semantics/OpenMP/symbol09.f90

  Log Message:
  -----------
  [flang][OpenMP] don't privatise loop index marked shared (#108176)

Mark the symbol with OmpShared, and then check that later in lowering to
avoid making a local loop index.

OpenMP 5.2 says: "Loop iteration variables of loops that are not associated 
with any OpenMP directive maybe listed in data-sharing attribute clauses on
the surrounding teams, parallel or taskgenerating construct, and on enclosed
constructs, subject to other restrictions."

Tests updated to match the extra OmpShared attribute.

Add regression test for lowering to hlfir.

Closes #102961

---------

Co-authored-by: Tom Eccles <tom.eccles at arm.com>


  Commit: 6568062ff1821f561c834f9f216fba0293e6f1c4
      https://github.com/llvm/llvm-project/commit/6568062ff1821f561c834f9f216fba0293e6f1c4
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M flang/test/Lower/OpenMP/atomic-read.f90
    M flang/test/Lower/OpenMP/atomic-update.f90
    M flang/test/Lower/OpenMP/parallel.f90
    M flang/test/Lower/OpenMP/wsloop-chunks.f90
    M flang/test/Lower/OpenMP/wsloop-monotonic.f90
    M flang/test/Lower/OpenMP/wsloop-nonmonotonic.f90
    M flang/test/Lower/OpenMP/wsloop-schedule.f90
    M flang/test/Lower/OpenMP/wsloop.f90
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOpBase.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/mlir-tblgen/openmp-clause-ops.td
    M mlir/test/mlir-tblgen/openmp-ops-verify.td
    M mlir/test/mlir-tblgen/openmp-ops.td
    M mlir/tools/mlir-tblgen/OmpOpGen.cpp

  Log Message:
  -----------
  [MLIR][OpenMP] Improve assemblyFormat handling for clause-based ops (#108023)

This patch modifies the representation of `OpenMP_Clause` to allow
definitions to incorporate both required and optional arguments while
still allowing operations including them and overriding the
`assemblyFormat` to take advantage of automatically-populated format
strings.

The proposed approach is to split the `assemblyFormat` clause property
into `reqAssemblyFormat` and `optAssemblyFormat`, and remove the
`isRequired` template and associated `required` property. The
`OpenMP_Op` class, in turn, populates the new `clausesReqAssemblyFormat`
and `clausesOptAssemblyFormat` properties in addition to
`clausesAssemblyFormat`. These properties can be used by clause-based
OpenMP operation definitions to reconstruct parts of the
clause-inherited format string in a more flexible way when overriding
it.

Clause definitions are updated to follow this new approach and some
operation definitions overriding the `assemblyFormat` are simplified by
taking advantage of the improved flexibility, reducing code duplication.
The `verify-openmp-ops` tablegen pass is updated for the new
`OpenMP_Clause` representation.

Some MLIR and Flang unit tests had to be updated due to changes to the
default printing order of clauses on updated operations.


  Commit: 76fd69be74e3a52cec77d5401003469791ef9834
      https://github.com/llvm/llvm-project/commit/76fd69be74e3a52cec77d5401003469791ef9834
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp

  Log Message:
  -----------
  [VPlan] Simplify VPBuilder insert point when live outs for FORs.

Simplifies setting the insert point, addressing a TODO.


  Commit: a41bb71f2216cef08ab04f1d730ae1701c145f3c
      https://github.com/llvm/llvm-project/commit/a41bb71f2216cef08ab04f1d730ae1701c145f3c
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-errors.c
    M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-x64-error.c
    M clang/test/CodeGen/X86/avx10_2satcvtds-builtins-errors.c

  Log Message:
  -----------
  [X86][test] Avoid writing to a potentially write-protected dir

see https://github.com/llvm/llvm-project/pull/108525 (#108525)

for a409ebc1fc136be4004073a12cd7f847a5f3a588


  Commit: 50d2b6ac9e2aabd25724768a822a0398f2ca5a06
      https://github.com/llvm/llvm-project/commit/50d2b6ac9e2aabd25724768a822a0398f2ca5a06
  Author: Ryan Mansfield <ryan_mansfield at apple.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/include/clang/Driver/Options.td

  Log Message:
  -----------
  [clang] Fix various typos and whitespace in HelpText. (#108527)


  Commit: 90a2e0bb423629b7e70f4b91adb44851199dd5ea
      https://github.com/llvm/llvm-project/commit/90a2e0bb423629b7e70f4b91adb44851199dd5ea
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/lib/Sema/SemaOverload.cpp

  Log Message:
  -----------
  [clang] Silence GCC warnings about control reaching end of non void function

This fixes GCC warnings since
e7f782e7481cea23ef452a75607d3d61f5bd0d22.


  Commit: 471360b2241aaca8ffe457ac796e01d4f0988e6a
      https://github.com/llvm/llvm-project/commit/471360b2241aaca8ffe457ac796e01d4f0988e6a
  Author: Congcong Cai <congcong.cai at bmw.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang-tools-extra/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [clang-tidy][NFC] fix typo in release note


  Commit: 9282c9d282e8062965f20d4ef89324cc96b92447
      https://github.com/llvm/llvm-project/commit/9282c9d282e8062965f20d4ef89324cc96b92447
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M libcxx/test/libcxx/diagnostics/chrono.nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++] Avoid name conflict with declaration in <unistd.h>

It appears that ::link is also declared as another kind of symbol
in <unistd.h>, which we seem to get transitively when we start using
a single top-level module. Instead of declaring these names as global
extern variables, use function parameters to achieve the same thing.


  Commit: c34aca8ddc214b2ade997085e56689378ef1a8d0
      https://github.com/llvm/llvm-project/commit/c34aca8ddc214b2ade997085e56689378ef1a8d0
  Author: Mital Ashok <mital at mitalashok.co.uk>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M libcxx/include/experimental/__simd/vec_ext.h

  Log Message:
  -----------
  [libc++][NFC] Remove unnecessary unsigned comparison with 0 (#108391)

This fixes a `-Wtype-limits` warning emitted when this file is compiled
with GCC when assertions are enabled.


  Commit: 6be9be5e0b4ba9d561dc005bea4eace40b53510d
      https://github.com/llvm/llvm-project/commit/6be9be5e0b4ba9d561dc005bea4eace40b53510d
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lld/COFF/Chunks.cpp
    M lld/COFF/Chunks.h
    M lld/COFF/InputFiles.cpp
    M lld/COFF/InputFiles.h
    M lld/COFF/MapFile.cpp
    M lld/COFF/MarkLive.cpp
    M lld/COFF/PDB.cpp
    M lld/COFF/Symbols.cpp
    M lld/COFF/Symbols.h
    M lld/COFF/Writer.cpp

  Log Message:
  -----------
  [LLD][COFF][NFC] Store live flag in ImportThunkChunk. (#108459)

Instead of ImportFile. This is a preparation for ARM64EC support, which
has both x86 and ARM64EC thunks and each of them needs a separate flag.


  Commit: 387bee91f095c197270b4d0a9e19cc86b2edea73
      https://github.com/llvm/llvm-project/commit/387bee91f095c197270b4d0a9e19cc86b2edea73
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/unittests/Bitcode/BitReaderTest.cpp
    M llvm/unittests/CodeGen/GlobalISel/GISelMITest.cpp
    M llvm/unittests/CodeGen/GlobalISel/LegalizerTest.cpp
    M llvm/unittests/CodeGen/MachineInstrTest.cpp
    M llvm/unittests/CodeGen/MachineOperandTest.cpp

  Log Message:
  -----------
  [llvm][unittests] Strip unneeded uses of raw_string_ostream::str() (NFC)

Avoid excess layer of indirection.


  Commit: 69a21154caa5b53d302cd3bfd7ce0ec1a0c3d985
      https://github.com/llvm/llvm-project/commit/69a21154caa5b53d302cd3bfd7ce0ec1a0c3d985
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/expand-select.ll

  Log Message:
  -----------
  [DAG] Fold trunc(srl(extract_elt(vec,c1),c2)) -> extract_elt(bitcast(vec),c3) (#107987)

Extends existing trunc(extract_elt(vec,c1)) -> extract_elt(bitcast(vec),c3) fold.

Noticed while working on #107404


  Commit: a3ea018d4900691e10ff6fd059cf07f33e949819
      https://github.com/llvm/llvm-project/commit/a3ea018d4900691e10ff6fd059cf07f33e949819
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp

  Log Message:
  -----------
  [X86] Use MCRegister in X86AsmParser. (#108509)


  Commit: ee4582f9c8c395b1a9d901b522510af622206049
      https://github.com/llvm/llvm-project/commit/ee4582f9c8c395b1a9d901b522510af622206049
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [RISCV] Use CCValAssign::getCustomReg for fixed vector arguments/returns with RVV. (#108470)

We need to insert a insert_subvector or extract_subvector which feels
pretty custom.

This should make it easier to support fixed vector arguments for GISel.


  Commit: 4a9b6b05c50a66f7dac6871f89a76daf77827c8d
      https://github.com/llvm/llvm-project/commit/4a9b6b05c50a66f7dac6871f89a76daf77827c8d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] Cleanup lowerShuffleToEXPAND arg layout. NFC.

Reorder the arg layout to match (most) other lowerShuffle* calls.

Rename to lowerShuffleWithEXPAND to match other lowering cases where we lower to a single node.


  Commit: 326287fd5b7b38987dbfbe80013225485d261790
      https://github.com/llvm/llvm-project/commit/326287fd5b7b38987dbfbe80013225485d261790
  Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp
    M mlir/test/Dialect/Linalg/transform-tile-and-winograd-rewrite.mlir
    M mlir/test/Dialect/Linalg/winograd-conv2d-rewrite.mlir
    M mlir/test/Dialect/Linalg/winograd-conv2d.mlir

  Log Message:
  -----------
  Add missing FillOp to winograd lowering (#108181)

Winograd lowering involves a number of matmul and batch_matmul which
are currently passed tensor.empty result as out parameter, thereby
are undefined behaviour. This commit adds the necessary linalg.fill.

---------

Co-authored-by: Max191 <44243577+Max191 at users.noreply.github.com>


  Commit: 387ef59ab9520c0811bf555679dd8ff0a60417c6
      https://github.com/llvm/llvm-project/commit/387ef59ab9520c0811bf555679dd8ff0a60417c6
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/ClangTypeNodesEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change TypeNodesEmitter to use const RecordKeeper (#108476)

Change TypeNodesEmitter to use const RecordKeeper.

This is a part of effort to have better const correctness in TableGen
backends:


https://discourse.llvm.org/t/psa-planned-changes-to-tablegen-getallderiveddefinitions-api-potential-downstream-breakages/81089


  Commit: f637273d7708da0a01c3adb2bb85ae1c541f46a1
      https://github.com/llvm/llvm-project/commit/f637273d7708da0a01c3adb2bb85ae1c541f46a1
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/ClangSACheckersEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change SACheckersEmitter to use const RecordKeeper (#108477)

Change SACheckersEmitter to use const RecordKeeper.

This is a part of effort to have better const correctness in TableGen
backends:


https://discourse.llvm.org/t/psa-planned-changes-to-tablegen-getallderiveddefinitions-api-potential-downstream-breakages/81089


  Commit: d757bbf68f35dbcfd68580e3798cf301862dd314
      https://github.com/llvm/llvm-project/commit/d757bbf68f35dbcfd68580e3798cf301862dd314
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/ClangSyntaxEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change SyntaxEmitter to use const RecordKeeper (#108478)

Change SyntaxEmitter to use const RecordKeeper.

This is a part of effort to have better const correctness in TableGen
backends:


https://discourse.llvm.org/t/psa-planned-changes-to-tablegen-getallderiveddefinitions-api-potential-downstream-breakages/81089


  Commit: 75d87247871110efe83edcb0107176614f88a5d9
      https://github.com/llvm/llvm-project/commit/75d87247871110efe83edcb0107176614f88a5d9
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/MveEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change MVE Emitter to use const RecordKeeper (#108500)

Change MVE Emitter to use const RecordKeeper.

This is a part of effort to have better const correctness in TableGen
backends:


https://discourse.llvm.org/t/psa-planned-changes-to-tablegen-getallderiveddefinitions-api-potential-downstream-breakages/81089


  Commit: a4b161736881634baac52163ceca62a595843054
      https://github.com/llvm/llvm-project/commit/a4b161736881634baac52163ceca62a595843054
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/NeonEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change NeonEmitter to use const RecordKeeper (#108501)

Change NeonEmitter to use const RecordKeeper.

This is a part of effort to have better const correctness in TableGen
backends:


https://discourse.llvm.org/t/psa-planned-changes-to-tablegen-getallderiveddefinitions-api-potential-downstream-breakages/81089


  Commit: 974fa8522be37eb0a111fee004b0bc8a9debf9fc
      https://github.com/llvm/llvm-project/commit/974fa8522be37eb0a111fee004b0bc8a9debf9fc
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/RISCVVEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change RISCVVEmitter to use const RecordKeeper (#108502)

Change RISCVVEmitter to use const RecordKeeper.

This is a part of effort to have better const correctness in TableGen
backends:


https://discourse.llvm.org/t/psa-planned-changes-to-tablegen-getallderiveddefinitions-api-potential-downstream-breakages/81089


  Commit: ab06a18b59eddfa0719faa1fe40e83829939c6db
      https://github.com/llvm/llvm-project/commit/ab06a18b59eddfa0719faa1fe40e83829939c6db
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Analysis/IRSimilarityIdentifier.cpp

  Log Message:
  -----------
  [IRSim] Avoid repeated hash lookups (NFC) (#108483)


  Commit: 711278e273826f3903cef448f433fe2135c569c6
      https://github.com/llvm/llvm-project/commit/711278e273826f3903cef448f433fe2135c569c6
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/SveEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change SVE Emitter to use const RecordKeeper (#108503)

Change SVE Emitter to use const RecordKeeper.

This is a part of effort to have better const correctness in TableGen
backends:


https://discourse.llvm.org/t/psa-planned-changes-to-tablegen-getallderiveddefinitions-api-potential-downstream-breakages/81089


  Commit: 99fe5954d258511ec2e36e8c7f612568e9701ab7
      https://github.com/llvm/llvm-project/commit/99fe5954d258511ec2e36e8c7f612568e9701ab7
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M libc/src/__support/time/linux/CMakeLists.txt
    M libc/src/__support/time/linux/clock_gettime.h

  Log Message:
  -----------
  [libc] implement clock_gettime using vDSO (#108458)

supersedes https://github.com/llvm/llvm-project/pull/91805


  Commit: ea5d37f4c1fd9c0850bee35958568a8b6596b3f9
      https://github.com/llvm/llvm-project/commit/ea5d37f4c1fd9c0850bee35958568a8b6596b3f9
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lld/COFF/Chunks.h
    M lld/COFF/InputFiles.cpp
    M lld/COFF/InputFiles.h
    M lld/COFF/Writer.cpp
    M lld/test/COFF/arm64ec-import.test

  Log Message:
  -----------
  [LLD][COFF] Add Support for ARM64EC Import Thunks (#108460)

ARM64EC import thunks function similarly to regular ARM64 thunks but use
a mangled name and perform the call through the auxiliary IAT.


  Commit: a6438360d416f4529574eebf6aa65b80d48ef85e
      https://github.com/llvm/llvm-project/commit/a6438360d416f4529574eebf6aa65b80d48ef85e
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M libc/src/__support/OSUtil/linux/vdso_sym.h

  Log Message:
  -----------
  [libc] fix build issue in overlay mode (#108583)


  Commit: ff1de24a16c8f4dddc4381df00fe15e42891508b
      https://github.com/llvm/llvm-project/commit/ff1de24a16c8f4dddc4381df00fe15e42891508b
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/tools/llvm-exegesis/lib/LlvmState.h

  Log Message:
  -----------
  [llvm-exegesis] Remove getter for RegNameToRegNo mapping

This patch removes the getter for the mentioned mapping. This was only
kept around to keep things in sync for some downstream codebases (that
didn't even end up needing it), so removing it now that it is not needed
anymore.


  Commit: ffeb793f3a90623ab3c7f33f922d48a1f5f97cdf
      https://github.com/llvm/llvm-project/commit/ffeb793f3a90623ab3c7f33f922d48a1f5f97cdf
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/docs/analyzer/checkers.rst

  Log Message:
  -----------
  [clang][analyzer][docs] Fix documentation of checker 'StackAddrAsyncEscape' (NFC) (#108586)

The checker was indicated as a 'C' language checker but is only applicable to 'ObjC' code.


  Commit: 213c59ddd2a702ddd3d849cea250440b1ed718e0
      https://github.com/llvm/llvm-project/commit/213c59ddd2a702ddd3d849cea250440b1ed718e0
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/source/Plugins/Process/FreeBSD/NativeProcessFreeBSD.cpp
    M lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp

  Log Message:
  -----------
  [lldb] Add pc check for thread-step-by-bp algorithms (#108504)

lldb-server built with NativeProcessLinux.cpp and
NativeProcessFreeBSD.cpp can use breakpoints to implement instruction
stepping on cores where there is no native instruction-step primitive.
Currently these set a breakpoint, continue, and if we hit the breakpoint
with the original thread, set the stop reason to be "trace".

I am wrapping up a change to lldb's breakpoint algorithm where I change
its current behavior of

"if a thread stops at a breakpoint site, we set
the thread's stop reason to breakpoint-hit, even if the breakpoint
hasn't been executed" +
"when resuming any thread at a breakpoint site, instruction-step past
the breakpoint before resuming"

to a behavior of

"when a thread executes a breakpoint, set the stop reason to
breakpoint-hit" +
"when a thread has hit a breakpoint, when the thread resumes, we
silently step past the breakpoint and then resume the thread".

For these lldb-server targets doing breakpoint stepping, this means that
if we are sitting on a breakpoint that has not yet executed, and
instruction-step the thread, we will execute the breakpoint instruction
at $pc (instead of $next-pc where it meant to go), and stop again -- at
the same pc value. Then we will rewrite the stop reason to 'trace'. The
higher level logic will see that we haven't hit the breakpoint
instruction again, so it will try to instruction step again, hitting the
breakpoint again forever.

To fix this, I'm checking that the thread matches the one we are
instruction-stepping-by-breakpoint AND that we've stopped at the
breakpoint address we are stepping to. Only in that case will the stop
reason be rewritten to "trace" hiding the implementation detail that the
step was done by breakpoints.


  Commit: 65a4d11b1e67429d53df1fcee0f93492aa95c448
      https://github.com/llvm/llvm-project/commit/65a4d11b1e67429d53df1fcee0f93492aa95c448
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp

  Log Message:
  -----------
  [lldb] Set the stop reason when receiving swbreak/hwbreak (#108518)

xusheng added support for swbreak/hwbreak a month ago, and no special
support was needed in ProcessGDBRemote when they're received because
lldb already marks a thread as having hit a breakpoint when it stops at
a breakpoint site. However, with changes I am working on, we need to
know the real stop reason a thread stopped or the breakpoint hit will
not be recognized.

This is similar to how lldb processes the "watch/rwatch/awatch" keys in
a thread stop packet -- we set the `reason` to `watchpoint`, and these
set it to `breakpoint` so we set the stop reason correctly later in
these methods.


  Commit: 51f552568901b069f04edd9eacac89be452bfadf
      https://github.com/llvm/llvm-project/commit/51f552568901b069f04edd9eacac89be452bfadf
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx20Papers.csv

  Log Message:
  -----------
  [libc++][NFC] Mark P1869R1 as implemented (#107746)

https://wg21.link/p1869r1: Rename `condition_variable_any` interruptible
wait methods

The paper was implemented as experimental feature in Clang 18 in:
https://github.com/llvm/llvm-project/commit/4fa812bb52a5b1eea22750a1b59f94221d0df622

Experimental status removed in:
https://github.com/llvm/llvm-project/pull/107900

Closes https://github.com/llvm/llvm-project/issues/100031

---------

Co-authored-by: Hristo Hristov <zingam at outlook.com>


  Commit: 82987bd9da1fd22a9d05148e8f74142aaf7ec4d0
      https://github.com/llvm/llvm-project/commit/82987bd9da1fd22a9d05148e8f74142aaf7ec4d0
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M libc/src/__support/time/linux/CMakeLists.txt

  Log Message:
  -----------
  [libc] fix dependency path for vDSO (#108591)


  Commit: cd6844c45cbe9a5c4cf055142c4026dc408a8243
      https://github.com/llvm/llvm-project/commit/cd6844c45cbe9a5c4cf055142c4026dc408a8243
  Author: Lei Huang <lei at ca.ibm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/test/CodeGen/PowerPC/builtins-ppc-build-pair-mma.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-pair-mma-types.c

  Log Message:
  -----------
  [PowerPC][NFC] autogen mma tc checks via update_cc_test_checks (#108584)

Update mma tests in prep for changes needed in a followup patch for
https://github.com/llvm/llvm-project/issues/107229.

Checks for ``clang/test/CodeGen/PowerPC/builtins-ppc-pair-mma-types.c``
seem to have been manually upated to rename temp variables even though
it says checks was auto generated. Regenerate via script.

Add noopt checks for
``clang/test/CodeGen/PowerPC/builtins-ppc-build-pair-mma.c``.


  Commit: 661382f2c07ba464caa0ad0fb8c64c1c3b20e9a4
      https://github.com/llvm/llvm-project/commit/661382f2c07ba464caa0ad0fb8c64c1c3b20e9a4
  Author: Jacob Lalonde <jalalonde at fb.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.h
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
    M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py

  Log Message:
  -----------
  [LLDB][Minidump] Minidump erase file on failure (#108259)

In #95312 Minidump file creation was moved from being created at the
end, to the file being emitted in chunks. This causes some undesirable
behavior where the file can still be present after an error has
occurred. To resolve this we will now delete the file upon an error.


  Commit: f0f1b706e2333ecbe3027a3da5ae7b1ff5c1cfc4
      https://github.com/llvm/llvm-project/commit/f0f1b706e2333ecbe3027a3da5ae7b1ff5c1cfc4
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/PassManager.h
    M llvm/lib/SandboxIR/PassManager.cpp
    M llvm/unittests/SandboxIR/PassTest.cpp

  Log Message:
  -----------
  [SandboxIR][PassRegistry] Parse pipeline string (#108103)

This patch implements a simple version of the pipeline parsing function.
It currently only handles a single FPM and adds function passes to it.


  Commit: 8e2843b471c5efb5e5df6e0e285bfdc72dff6f17
      https://github.com/llvm/llvm-project/commit/8e2843b471c5efb5e5df6e0e285bfdc72dff6f17
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/docs/RISCVUsage.rst

  Log Message:
  -----------
  [RISCV][Docs] Change Zvbb and Zvkb from 'Assembly Support' to Supported. NFC (#108572)

We have generic isel support for Zvkb and Zvbb.


  Commit: f902339d7f24a278b9c77d0226053075bd232ee5
      https://github.com/llvm/llvm-project/commit/f902339d7f24a278b9c77d0226053075bd232ee5
  Author: James Y Knight <jyknight at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/lib/Headers/module.modulemap

  Log Message:
  -----------
  Adjust modulemap to mark mm3dnow as textual header. (#107155)

This avoids issuing the deprecation diagnostic when building the module.

Not building it into a module shouldn't cause any negative impacts,
since it no longer has any declarations other than the header guard.
It's also very rarely included by anything.

Addresses
https://github.com/llvm/llvm-project/pull/96246#issuecomment-2322453809


  Commit: fffc7fb7ad48d64d164565fdf54bec25267c9d22
      https://github.com/llvm/llvm-project/commit/fffc7fb7ad48d64d164565fdf54bec25267c9d22
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/SandboxIRValues.def
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [SandboxIR] Implement DSOLocalEquivalent (#108473)

This patch implements sandboxir::DSOLocalEquivalent mirroring
llvm::DSOLocalEquivalent.


  Commit: 02e4186d0b3508e79d78b0ec844518b13a3fe9ea
      https://github.com/llvm/llvm-project/commit/02e4186d0b3508e79d78b0ec844518b13a3fe9ea
  Author: Ganesh <Ganesh.Gopalasubramanian at amd.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/lib/Basic/Targets/X86.cpp
    M clang/test/CodeGen/target-builtin-noerror.c
    M clang/test/Driver/x86-march.c
    M clang/test/Frontend/x86-target-cpu.c
    M clang/test/Misc/target-invalid-cpu-note/x86.c
    M clang/test/Preprocessor/predefined-arch-macros.c
    M compiler-rt/lib/builtins/cpu_model/x86.c
    M llvm/include/llvm/TargetParser/X86TargetParser.def
    M llvm/include/llvm/TargetParser/X86TargetParser.h
    M llvm/lib/Target/X86/X86.td
    M llvm/lib/Target/X86/X86PfmCounters.td
    M llvm/lib/TargetParser/Host.cpp
    M llvm/lib/TargetParser/X86TargetParser.cpp
    M llvm/test/CodeGen/X86/bypass-slow-division-64.ll
    M llvm/test/CodeGen/X86/cmp16.ll
    M llvm/test/CodeGen/X86/cpus-amd.ll
    M llvm/test/CodeGen/X86/rdpru.ll
    M llvm/test/CodeGen/X86/shuffle-as-shifts.ll
    M llvm/test/CodeGen/X86/slow-unaligned-mem.ll
    M llvm/test/CodeGen/X86/sqrt-fastmath-tune.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-permilpd-avx512.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-permilps-avx512.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-unpckpd-avx512.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-unpckps-avx512.ll
    M llvm/test/CodeGen/X86/vector-shuffle-fast-per-lane.ll
    M llvm/test/CodeGen/X86/vpdpwssd.ll
    M llvm/test/CodeGen/X86/x86-64-double-shifts-var.ll
    M llvm/test/MC/X86/x86_long_nop.s
    M llvm/test/Transforms/LoopUnroll/X86/call-remark.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr63668.ll

  Log Message:
  -----------
  [X86] AMD Zen 5 Initial enablement (#107964)

This patch enables the basic skeleton enablement of AMD next gen zen5 CPUs.


  Commit: b9d85b1263efa8c4953f8cf10999ee165f32922e
      https://github.com/llvm/llvm-project/commit/b9d85b1263efa8c4953f8cf10999ee165f32922e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp

  Log Message:
  -----------
  [CodeGen] Use DenseMap::operator[] (NFC) (#108489)

Once we modernize CopyInfo with default member initializations,

  Copies.insert({Unit, ...})

becomes equivalent to:

  Copies.try_emplace(Unit)

which we can simplify further down to Copies[Unit].


  Commit: 4ef16e3160750717f447fd76e2383c10b68eb5ae
      https://github.com/llvm/llvm-project/commit/4ef16e3160750717f447fd76e2383c10b68eb5ae
  Author: Julian Schmidt <git.julian.schmidt at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/return-const-ref-from-parameter.rst

  Log Message:
  -----------
  [NFC][clang-tidy] document fix to bugprone-return-const-ref-from-parameter (#107641)

Describe how the issue that is diagnosed by this check can be resolved.
Namely, by adding an overload for the xvalue case (`&&` parameter).

Fixes #107600


  Commit: a953982cb7dee0678bb5f7c2febe4c3b8b718c7a
      https://github.com/llvm/llvm-project/commit/a953982cb7dee0678bb5f7c2febe4c3b8b718c7a
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    M mlir/lib/Target/LLVMIR/Dialect/NVVM/LLVMIRToNVVMTranslation.cpp
    M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
    M mlir/test/Target/LLVMIR/Import/nvvmir.ll
    M mlir/test/Target/LLVMIR/nvvmir.mlir

  Log Message:
  -----------
  [mlir][GPU] Plumb range information through the NVVM lowerings (#107659)

Update the GPU to NVVM lowerings to correctly propagate range
information on IDs and dimension queries, etiher from
known_{block,grid}_size attributes or from `upperBound` annotations on
the operations themselves.


  Commit: 02d8813820b1ebf3fae6993e677db269f0077272
      https://github.com/llvm/llvm-project/commit/02d8813820b1ebf3fae6993e677db269f0077272
  Author: jimingham <jingham at apple.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/docs/resources/sbapi.rst

  Log Message:
  -----------
  Add a comment in the SB API doc about keeping the SB API's lightweight. (#108462)


  Commit: b6bf27ef3c179eefd805f39aa681705fc980ceed
      https://github.com/llvm/llvm-project/commit/b6bf27ef3c179eefd805f39aa681705fc980ceed
  Author: jeffreytan81 <jeffreytan at meta.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/examples/synthetic/gnu_libstdcpp.py
    M lldb/include/lldb/API/SBValue.h
    M lldb/source/API/SBValue.cpp

  Log Message:
  -----------
  Avoid expression evaluation in libStdC++ std::vector<bool> synthetic children provider  (#108414)

Our customers is reporting a serious performance issue (expanding a this
pointer takes 70 seconds in VSCode) in a specific execution context.

Profiling shows the hot path is triggered by an expression evaluation
from libStdC++ synthetic children provider for `std::vector<bool>` since
it uses `CreateValueFromExpression()`.

This PR added a new `SBValue::CreateBoolValue()` API and switch
`std::vector<bool>` synthetic children provider to use the new API
without performing expression evaluation.

Note: there might be other cases of `CreateValueFromExpression()` in our
summary/synthetic children providers which I will sweep through in later
PRs.

With this PR, the customer's scenario reduces from 70 seconds => 50
seconds. I will add other PRs to further optimize the remaining 50
seconds (mostly from type/namespace lookup).

Testing:

`test/API/functionalities/data-formatter/data-formatter-stl/libstdcpp/vbool/TestDataFormatterStdVBool.py`
passes with the PR

---------

Co-authored-by: jeffreytan81 <jeffreytan at fb.com>


  Commit: 0351dc522a25df0473a63b414a5bfde5814d3dc3
      https://github.com/llvm/llvm-project/commit/0351dc522a25df0473a63b414a5bfde5814d3dc3
  Author: Alex Langford <alangford at apple.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp

  Log Message:
  -----------
  [lldb] Do not use LC_FUNCTION_STARTS data to determine symbol size as symbols are created (#106791)

Summary:
This improves the performance of ObjectFileMacho::ParseSymtab by
removing eager and expensive work in favor of doing it later in a
less-expensive fashion.

Experiment:
My goal was to understand LLDB's startup time.
First, I produced a Debug build of LLDB (no dSYM) and a
Release+NoAsserts build of LLDB. The Release build debugged the Debug
build as it debugged a small C++ program. I found that
ObjectFileMachO::ParseSymtab accounted for somewhere between 1.2 and 1.3
seconds consistently. After applying this change, I consistently
measured a reduction of approximately 100ms, putting the time closer to
1.1s and 1.2s on average.

Background:
ObjectFileMachO::ParseSymtab will incrementally create symbols by
parsing nlist entries from the symtab section of a MachO binary. As it
does this, it eagerly tries to determine the size of symbols (e.g. how
long a function is) using LC_FUNCTION_STARTS data (or eh_frame if
LC_FUNCTION_STARTS is unavailable). Concretely, this is done by
performing a binary search on the function starts array and calculating
the distance to the next function or the end of the section (whichever
is smaller).

However, this work is unnecessary for 2 reasons:
1. If you have debug symbol entries (i.e. STABs), the size of a function
is usually stored right after the function's entry. Performing this work
right before parsing the next entry is unnecessary work.
2. Calculating symbol sizes for symbols of size 0 is already performed
in `Symtab::InitAddressIndexes` after all the symbols are added to the
Symtab. It also does this more efficiently by walking over a list of
symbols sorted by address, so the work to calculate the size per symbol
is constant instead of O(log n).


  Commit: 3a274584ebbcad6500efc4083bb53c1af565e294
      https://github.com/llvm/llvm-project/commit/3a274584ebbcad6500efc4083bb53c1af565e294
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp

  Log Message:
  -----------
  [LiveDebugValues] Avoid repeated hash lookups (NFC) (#108484)


  Commit: 758230827d59ab312515e7ad9e6d25b799dedd46
      https://github.com/llvm/llvm-project/commit/758230827d59ab312515e7ad9e6d25b799dedd46
  Author: David Green <david.green at arm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/abs.ll
    M llvm/test/CodeGen/AArch64/fcmp.ll
    M llvm/test/CodeGen/AArch64/shift.ll

  Log Message:
  -----------
  [AArch64][GISel] Scalarize i128 vector shifts.

Like most other i128 operations, this adds scalarization for i128 vector
shifts. Which in turn allows a few other operations to legalize too.


  Commit: 3a4b30e11eb8a2015aac185cd2368f4dc3ed1e53
      https://github.com/llvm/llvm-project/commit/3a4b30e11eb8a2015aac185cd2368f4dc3ed1e53
  Author: David Green <david.green at arm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/fcmp.ll
    M llvm/test/CodeGen/AArch64/icmp.ll

  Log Message:
  -----------
  [AArch64][GISel] Scalarize i128 ICmp and Select.

Similar to other i128 bit operations, we scalarizer any icmps or selects larger
than 64bits.


  Commit: d4f41befb7256f8e8378ae358b2b3d802454d6a4
      https://github.com/llvm/llvm-project/commit/d4f41befb7256f8e8378ae358b2b3d802454d6a4
  Author: Henrik G. Olsson <hnrklssn at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    A clang/test/utils/update-verify-tests/Inputs/duplicate-diag.c
    A clang/test/utils/update-verify-tests/Inputs/duplicate-diag.c.expected
    A clang/test/utils/update-verify-tests/Inputs/infer-indentation.c
    A clang/test/utils/update-verify-tests/Inputs/infer-indentation.c.expected
    A clang/test/utils/update-verify-tests/Inputs/leave-existing-diags.c
    A clang/test/utils/update-verify-tests/Inputs/leave-existing-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/multiple-errors.c
    A clang/test/utils/update-verify-tests/Inputs/multiple-errors.c.expected
    A clang/test/utils/update-verify-tests/Inputs/multiple-missing-errors-same-line.c
    A clang/test/utils/update-verify-tests/Inputs/multiple-missing-errors-same-line.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-checks.c
    A clang/test/utils/update-verify-tests/Inputs/no-checks.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-diags.c
    A clang/test/utils/update-verify-tests/Inputs/no-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-expected-diags.c
    A clang/test/utils/update-verify-tests/Inputs/no-expected-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/non-default-prefix.c
    A clang/test/utils/update-verify-tests/Inputs/non-default-prefix.c.expected
    A clang/test/utils/update-verify-tests/Inputs/update-same-line.c
    A clang/test/utils/update-verify-tests/Inputs/update-same-line.c.expected
    A clang/test/utils/update-verify-tests/Inputs/update-single-check.c
    A clang/test/utils/update-verify-tests/Inputs/update-single-check.c.expected
    A clang/test/utils/update-verify-tests/duplicate-diag.test
    A clang/test/utils/update-verify-tests/infer-indentation.test
    A clang/test/utils/update-verify-tests/leave-existing-diags.test
    A clang/test/utils/update-verify-tests/lit.local.cfg
    A clang/test/utils/update-verify-tests/multiple-errors.test
    A clang/test/utils/update-verify-tests/multiple-missing-errors-same-line.test
    A clang/test/utils/update-verify-tests/no-checks.test
    A clang/test/utils/update-verify-tests/no-diags.test
    A clang/test/utils/update-verify-tests/no-expected-diags.test
    A clang/test/utils/update-verify-tests/non-default-prefix.test
    A clang/test/utils/update-verify-tests/update-same-line.test
    A clang/test/utils/update-verify-tests/update-single-check.test
    A clang/utils/UpdateVerifyTests/core.py
    A clang/utils/update-verify-tests.py

  Log Message:
  -----------
  [Utils] add update-verify-tests.py (#97369)

Adds a python script to automatically take output from a failed clang
-verify test and update the test case(s) to expect the new behaviour.


  Commit: 4c040c027575f3a30dc94bfab4c975567195bdc7
      https://github.com/llvm/llvm-project/commit/4c040c027575f3a30dc94bfab4c975567195bdc7
  Author: Tyler Nowicki <tyler.nowicki at amd.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
    M llvm/lib/Transforms/Coroutines/CoroInternal.h
    A llvm/lib/Transforms/Coroutines/CoroShape.h
    M llvm/lib/Transforms/Coroutines/Coroutines.cpp

  Log Message:
  -----------
  [Coroutines] Move Shape to its own header (#108242)

* To create custom ABIs plugin libraries need access to CoroShape.
* As a step in enabling plugin libraries, move Shape into its own header
* The header will eventually be moved into include/llvm/Transforms/Coroutines

See RFC for more info:
https://discourse.llvm.org/t/rfc-abi-objects-for-coroutines/81057


  Commit: d0e7714de73b8b657dca1706e676027d42bbb775
      https://github.com/llvm/llvm-project/commit/d0e7714de73b8b657dca1706e676027d42bbb775
  Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/include/llvm/Support/AMDGPUAddrSpace.h
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.prefetch.data.ll
    A llvm/test/Verifier/AMDGPU/intrinsic-prefetch.ll

  Log Message:
  -----------
  [AMDGPU] Error on non-global pointer with s_prefetch_data (#107624)


  Commit: d588e49a324b3d6039c19f3108d722a8b9fcd96e
      https://github.com/llvm/llvm-project/commit/d588e49a324b3d6039c19f3108d722a8b9fcd96e
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [mlir][Transforms][NFC] Dialect conversion: Cache `UnresolvedMaterializationRewrite` (#108359)

The dialect conversion maintains a set of unresolved materializations
(`UnrealizedConversionCastOp`). Turn that set into a `DenseMap` that
maps from ops to `UnresolvedMaterializationRewrite *`. This improves
efficiency a bit, because an iteration over
`ConversionPatternRewriterImpl::rewrites` can be avoided.

Also delete some dead code.


  Commit: 9f738c84f05ff965b81e0be5cc725af3fa13cbf0
      https://github.com/llvm/llvm-project/commit/9f738c84f05ff965b81e0be5cc725af3fa13cbf0
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [SandboxIR] Implement GlobalObject (#108604)

This patch implements sandboxir::GlobalObject mirroring
llvm::GlobalObject.


  Commit: 39f2d2f156ba8af31a15f6df223d3cb57c7a4906
      https://github.com/llvm/llvm-project/commit/39f2d2f156ba8af31a15f6df223d3cb57c7a4906
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Pass.h
    M llvm/include/llvm/SandboxIR/PassManager.h
    A llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
    M llvm/lib/Transforms/Vectorize/CMakeLists.txt
    A llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
    A llvm/test/Transforms/SandboxVectorizer/default_pass_pipeline.ll

  Log Message:
  -----------
  [SandboxVec] Boilerplate for vectorization passes (#108603)

This patch implements a new empty pass for the Bottom-up vectorizer and
creates a pass pipeline that includes it.
The SandboxVectorizer LLVM pass runs the Sandbox IR pass pipeline.


  Commit: c3ac3fe8259b4ae85736ca81fa30e4098123e0b4
      https://github.com/llvm/llvm-project/commit/c3ac3fe8259b4ae85736ca81fa30e4098123e0b4
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M offload/DeviceRTL/CMakeLists.txt
    M offload/DeviceRTL/include/DeviceTypes.h
    M offload/include/Shared/Environment.h
    R offload/include/Shared/Types.h
    M offload/include/Shared/Utils.h

  Log Message:
  -----------
  [OpenMP] Fix redefining `stdint.h` types (#108607)

Summary:
We can include `stdint.h` just fine as long as we don't allow it to find
system headers, passing `-nostdlibinc` and `-nogpuinc` suppresses these
extra paths so we will just use the clang resource headers for
`stdint.h` and `stddef.h`.


  Commit: 98b1d01b42a4bb2e9a53bcab7589e66c5572c37f
      https://github.com/llvm/llvm-project/commit/98b1d01b42a4bb2e9a53bcab7589e66c5572c37f
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/phi-node-reshuffled-part.ll

  Log Message:
  -----------
  [SLP][NFC]Test with incorrect value for phi node with reused scalars, NFC


  Commit: c13bf6d4a89b8d62bc6eedf68d810a4584ccc4a8
      https://github.com/llvm/llvm-project/commit/c13bf6d4a89b8d62bc6eedf68d810a4584ccc4a8
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/phi-node-reshuffled-part.ll

  Log Message:
  -----------
  [SLP]Return proper value for phi vectorized node

Should not return the original phi vector instruction, need to return
actual vectorized value as a result.


  Commit: 0ba8b247dd63042528850af8cc572dc73225a04c
      https://github.com/llvm/llvm-project/commit/0ba8b247dd63042528850af8cc572dc73225a04c
  Author: Andrei Safronov <andrei.safronov at espressif.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.h
    A llvm/test/CodeGen/Xtensa/frameaddr-returnaddr.ll

  Log Message:
  -----------
  [Xtensa] Lowering FRAMEADDR/RETURNADDR operations. (#107363)


  Commit: 1fc3ca1a121e4ae7d0cc35ee314d3aa4b8c98361
      https://github.com/llvm/llvm-project/commit/1fc3ca1a121e4ae7d0cc35ee314d3aa4b8c98361
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/docs/RISCVUsage.rst

  Log Message:
  -----------
  [RISCV] Add Zvfhmin to RISCVUsage.rst. NFC (#108574)


  Commit: 29e5fe78f168a2f67f36cf56ffeff810d7ffcee6
      https://github.com/llvm/llvm-project/commit/29e5fe78f168a2f67f36cf56ffeff810d7ffcee6
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 39f2d2f156ba


  Commit: 21e3a212c570dc80055742ef8abbd0a306ff9135
      https://github.com/llvm/llvm-project/commit/21e3a212c570dc80055742ef8abbd0a306ff9135
  Author: Volodymyr Vasylkun <vvmposeydon at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    A llvm/test/Transforms/InstCombine/phi-with-multiple-unsimplifiable-values.ll

  Log Message:
  -----------
  [InstCombine] Replace an integer comparison of a `phi` node with multiple `ucmp`/`scmp` operands and a constant with `phi` of individual comparisons of original intrinsic's arguments (#107769)

When we have a `phi` instruction with more than one of its incoming
values being a call to `ucmp` or `scmp`, which is then compared with an
integer constant, we can move the comparison through the `phi` into the
incoming basic blocks because we know that a comparison of `ucmp`/`scmp`
with a constant will be simplified by the next iteration of InstCombine.

There's a high chance that other similar patterns can be identified, in
which case they can be easily handled by the same code by moving the
check for "simplifiable" instructions into a lambda.


  Commit: b659abef48efba6e380c0cc1aeae13e656368011
      https://github.com/llvm/llvm-project/commit/b659abef48efba6e380c0cc1aeae13e656368011
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M libc/src/__support/OSUtil/linux/vdso.cpp

  Log Message:
  -----------
  [libc] Fix vdso VER_FLG_BASE redefinition in overlay mod. (#108628)


  Commit: 75a57edadc9213bf404c67ff4949217da5b4d0ff
      https://github.com/llvm/llvm-project/commit/75a57edadc9213bf404c67ff4949217da5b4d0ff
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp

  Log Message:
  -----------
  VPlan/Builder: inline VPBuilder::createICmp (NFC) (#105650)

Inline VPBuilder::createICmp in the header, in line with the other
VPBuilder functions.


  Commit: b7e585b95e241d0506b6f71d53ff5b6e72a9c8f4
      https://github.com/llvm/llvm-project/commit/b7e585b95e241d0506b6f71d53ff5b6e72a9c8f4
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    R clang/test/utils/update-verify-tests/Inputs/duplicate-diag.c
    R clang/test/utils/update-verify-tests/Inputs/duplicate-diag.c.expected
    R clang/test/utils/update-verify-tests/Inputs/infer-indentation.c
    R clang/test/utils/update-verify-tests/Inputs/infer-indentation.c.expected
    R clang/test/utils/update-verify-tests/Inputs/leave-existing-diags.c
    R clang/test/utils/update-verify-tests/Inputs/leave-existing-diags.c.expected
    R clang/test/utils/update-verify-tests/Inputs/multiple-errors.c
    R clang/test/utils/update-verify-tests/Inputs/multiple-errors.c.expected
    R clang/test/utils/update-verify-tests/Inputs/multiple-missing-errors-same-line.c
    R clang/test/utils/update-verify-tests/Inputs/multiple-missing-errors-same-line.c.expected
    R clang/test/utils/update-verify-tests/Inputs/no-checks.c
    R clang/test/utils/update-verify-tests/Inputs/no-checks.c.expected
    R clang/test/utils/update-verify-tests/Inputs/no-diags.c
    R clang/test/utils/update-verify-tests/Inputs/no-diags.c.expected
    R clang/test/utils/update-verify-tests/Inputs/no-expected-diags.c
    R clang/test/utils/update-verify-tests/Inputs/no-expected-diags.c.expected
    R clang/test/utils/update-verify-tests/Inputs/non-default-prefix.c
    R clang/test/utils/update-verify-tests/Inputs/non-default-prefix.c.expected
    R clang/test/utils/update-verify-tests/Inputs/update-same-line.c
    R clang/test/utils/update-verify-tests/Inputs/update-same-line.c.expected
    R clang/test/utils/update-verify-tests/Inputs/update-single-check.c
    R clang/test/utils/update-verify-tests/Inputs/update-single-check.c.expected
    R clang/test/utils/update-verify-tests/duplicate-diag.test
    R clang/test/utils/update-verify-tests/infer-indentation.test
    R clang/test/utils/update-verify-tests/leave-existing-diags.test
    R clang/test/utils/update-verify-tests/lit.local.cfg
    R clang/test/utils/update-verify-tests/multiple-errors.test
    R clang/test/utils/update-verify-tests/multiple-missing-errors-same-line.test
    R clang/test/utils/update-verify-tests/no-checks.test
    R clang/test/utils/update-verify-tests/no-diags.test
    R clang/test/utils/update-verify-tests/no-expected-diags.test
    R clang/test/utils/update-verify-tests/non-default-prefix.test
    R clang/test/utils/update-verify-tests/update-same-line.test
    R clang/test/utils/update-verify-tests/update-single-check.test
    R clang/utils/UpdateVerifyTests/core.py
    R clang/utils/update-verify-tests.py

  Log Message:
  -----------
  Revert "[Utils] add update-verify-tests.py" (#108630)

Reverts llvm/llvm-project#97369


  Commit: acf90fd03f8deb036847cbdf6bfd4ae47d88ba6a
      https://github.com/llvm/llvm-project/commit/acf90fd03f8deb036847cbdf6bfd4ae47d88ba6a
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/test/MC/WebAssembly/basic-assembly.s
    A llvm/test/MC/WebAssembly/eh-assembly.s

  Log Message:
  -----------
  [WebAssembly] Create separate file for EH assembly tests (#108472)

Create `eh-assembly.s` that contains EH tests and remove EH tests from
`basic-assembly.s`, given that it's easier to manage. (We can have many
different tests, including the legacy EH and the new exnref, and with
nesting for readability)


  Commit: b74e7792194d9a8a9ef32c7dc1ffcd205b299336
      https://github.com/llvm/llvm-project/commit/b74e7792194d9a8a9ef32c7dc1ffcd205b299336
  Author: Lawrence Benson <github at lawben.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrAVX512.td
    A llvm/test/CodeGen/X86/vector-compress.ll

  Log Message:
  -----------
  [x86] Add lowering for `@llvm.experimental.vector.compress` (#104904)

This is a follow-up to #92289 that adds lowering of the new
`@llvm.experimental.vector.compress` intrinsic on x86 with AVX512
instructions. This intrinsic maps directly to `vpcompress`.


  Commit: aca226c0f89a049d9251eb0a097821b1acf9a316
      https://github.com/llvm/llvm-project/commit/aca226c0f89a049d9251eb0a097821b1acf9a316
  Author: Pranav Kant <prka at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  [Bazel] Fix build break for SandboxVectorizer (#108638)

Fixes
https://github.com/llvm/llvm-project/commit/39f2d2f156ba8af31a15f6df223d3cb57c7a4906


  Commit: ae3e82585e61eca1ee6100e81cde68b608faf0a8
      https://github.com/llvm/llvm-project/commit/ae3e82585e61eca1ee6100e81cde68b608faf0a8
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp

  Log Message:
  -----------
  [SandboxIR] Implement GlobalIFunc (#108622)

This patch implements sandboxir::GlobalIFunc mirroring
llvm::GlobalIFunc.


  Commit: 5130f3236f855436f4fa78a8ad7be0b39e638741
      https://github.com/llvm/llvm-project/commit/5130f3236f855436f4fa78a8ad7be0b39e638741
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
    A llvm/test/Transforms/SandboxVectorizer/user_pass_pipeline.ll

  Log Message:
  -----------
  [SandboxVec] User-defined pass pipeline (#108625)

This patch adds support for a user-defined pass-pipeline that overrides
the default pipeline of the vectorizer.
This will commonly be used by lit tests.


  Commit: a26ec542371652e1d774696e90016fd5b0b1c191
      https://github.com/llvm/llvm-project/commit/a26ec542371652e1d774696e90016fd5b0b1c191
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/include/clang/Tooling/CompilationDatabase.h
    M clang/lib/Tooling/CMakeLists.txt
    A clang/lib/Tooling/LocateToolCompilationDatabase.cpp
    M clang/test/ClangScanDeps/modules-extern-submodule.c
    M clang/test/ClangScanDeps/modules-full-output-tu-order.c
    M clang/test/ClangScanDeps/modules-has-include-umbrella-header.c
    M clang/test/ClangScanDeps/modules-header-sharing.m
    M clang/test/ClangScanDeps/modules-implementation-module-map.c
    M clang/test/ClangScanDeps/modules-implementation-private.m
    M clang/test/ClangScanDeps/modules-priv-fw-from-pub.m
    A clang/test/ClangScanDeps/resolve-executable-path.c
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp

  Log Message:
  -----------
  [clang-scan-deps] Infer the tool locations from PATH (#108539)

This allows the clang driver to know which tool is meant to be executed,
which allows the clang driver to load the right clang config files, and
allows clang to find colocated sysroots.

This makes sure that doing `clang-scan-deps -- <tool> ...` looks up
things in the same way as if one just would execute `<tool> ...`, when
`<tool>` isn't an absolute or relative path.


  Commit: 1b4aea601d3e891a2b04ff35b9749c7fbec6503e
      https://github.com/llvm/llvm-project/commit/1b4aea601d3e891a2b04ff35b9749c7fbec6503e
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/Tooling/BUILD.gn

  Log Message:
  -----------
  [gn build] Port a26ec5423716


  Commit: 90f077cba8f41a2ba0eb8ffebed8da48322ed0d7
      https://github.com/llvm/llvm-project/commit/90f077cba8f41a2ba0eb8ffebed8da48322ed0d7
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/source/Core/Progress.cpp

  Log Message:
  -----------
  [lldb] Emit signpost intervals for progress events (NFC) (#108498)

Emit signpost intervals for progress events so that when users report an
operation takes a long time, we can investigate the issue with
Instruments.app.


  Commit: ebf25d9509d19a381d94a0383135ee37f5b7b6e2
      https://github.com/llvm/llvm-project/commit/ebf25d9509d19a381d94a0383135ee37f5b7b6e2
  Author: Ziqing Luo <ziqing at udel.edu>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-libc-functions.cpp

  Log Message:
  -----------
  [-Wunsafe-buffer-usage] Reduce false positives with constant arrays in libc warnings (#108308)

For `snprintf(a, sizeof a, ...)`, the first two arguments form a safe
pattern if `a` is a constant array. In such a case, this commit will
suppress the warning.

(rdar://117182250)


  Commit: 2222e27d9e1438b0c723d46c62b1364391b58311
      https://github.com/llvm/llvm-project/commit/2222e27d9e1438b0c723d46c62b1364391b58311
  Author: Chris B <chris.bieneman at me.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Basic/LangStandards.def
    M clang/include/clang/Driver/Options.td
    M clang/lib/Basic/LangOptions.cpp
    M clang/lib/Basic/LangStandards.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Sema/DeclSpec.cpp
    M clang/test/ParserHLSL/group_shared.hlsl
    M clang/test/ParserHLSL/group_shared_202x.hlsl
    M clang/test/ParserHLSL/invalid_inside_cb.hlsl
    M clang/test/Preprocessor/predefined-macros-hlsl.hlsl
    M clang/test/SemaHLSL/group_shared.hlsl
    M clang/test/SemaHLSL/group_shared_202x.hlsl

  Log Message:
  -----------
  [HLSL] Add HLSL 202y language mode (#108437)

This change adds a new HLSL 202y language mode. Currently HLSL 202y is
planned to add `auto` and `constexpr`.

This change updates extension diagnostics to state that lambadas are a
"clang HLSL" extension (since we have no planned release yet to include
them), and that `auto` is a HLSL 202y extension when used in earlier
language modes.

Note: This PR does temporarily work around some differences between HLSL
2021 and 202x in Clang by changing test cases to explicitly specify
202x. A subsequent PR will update 2021's language flags to match 202x.


  Commit: c3fda44147d096c0018ae8c09cd0a0446f212a4f
      https://github.com/llvm/llvm-project/commit/c3fda44147d096c0018ae8c09cd0a0446f212a4f
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [VPlan] Use VPBuilder to create scalar IV steps and derived IV (NFCI).

Extend VPBuilder to allow creating VPDerivedIVRecipe, VPScalarCastRecipe
and VPScalarIVStepsRecipe.

Use them to simplify the code to create scalar IV steps slightly.


  Commit: 6cbb2455ae60d9dd7b34642ae1d54e02fbc4d33f
      https://github.com/llvm/llvm-project/commit/6cbb2455ae60d9dd7b34642ae1d54e02fbc4d33f
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [SandboxIR] Implement missng Instruction::comesBefore() (#108635)


  Commit: a592e4b4b0e01d1861f5ef7da5cfe90f93e16ce8
      https://github.com/llvm/llvm-project/commit/a592e4b4b0e01d1861f5ef7da5cfe90f93e16ce8
  Author: Pranav Kant <prka at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [bazel] add vdso dependency to time_linux lib (#108647)

This is a quick fix to unbreak Bazel build. The right solution would
probably add vdso.cpp in the support library which includes circular
dependency and needs more restructuring.


  Commit: ee3f5c2f91ca22932952ef12c3bad3440a22c19b
      https://github.com/llvm/llvm-project/commit/ee3f5c2f91ca22932952ef12c3bad3440a22c19b
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [bazel] Port a953982cb7dee0678bb5f7c2febe4c3b8b718c7a (#108651)


  Commit: f885e02cf7cac1b08cab4cd526773420076029dd
      https://github.com/llvm/llvm-project/commit/f885e02cf7cac1b08cab4cd526773420076029dd
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/lib/Sema/SemaOverload.cpp

  Log Message:
  -----------
  Revert "[clang] Silence GCC warnings about control reaching end of non void function"

This reverts commit 90a2e0bb423629b7e70f4b91adb44851199dd5ea.

Reverting parent CL

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


  Commit: e1bd9740faa62c11cc785a7b70ec1ad17e286bd1
      https://github.com/llvm/llvm-project/commit/e1bd9740faa62c11cc785a7b70ec1ad17e286bd1
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang-tools-extra/clangd/Diagnostics.cpp
    M clang-tools-extra/clangd/Diagnostics.h
    M clang-tools-extra/clangd/ParsedAST.cpp
    M clang-tools-extra/clangd/Preamble.cpp
    M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/Diagnostic.h
    M clang/include/clang/Basic/DiagnosticCategories.h
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Frontend/LogDiagnosticPrinter.cpp
    M clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
    M clang/lib/Frontend/TextDiagnosticPrinter.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/StaticAnalyzer/Core/TextDiagnostics.cpp
    M clang/test/Sema/diagnose_if.c
    R clang/test/SemaCXX/diagnose_if-warning-group.cpp
    M clang/tools/diagtool/ListWarnings.cpp
    M clang/tools/diagtool/ShowEnabledWarnings.cpp
    M clang/tools/libclang/CXStoredDiagnostic.cpp
    M flang/lib/Frontend/TextDiagnosticPrinter.cpp

  Log Message:
  -----------
  Revert "Reapply "[clang] Extend diagnose_if to accept more detailed warning information (#70976)" (#108453)"

This reverts commit e7f782e7481cea23ef452a75607d3d61f5bd0d22.

This had UBSan failures:

[----------] 1 test from ConfigCompileTests
[ RUN      ] ConfigCompileTests.DiagnosticSuppression
Config fragment: compiling <unknown>:0 -> 0x00007B8366E2F7D8 (trusted=false)
/usr/local/google/home/fmayer/large/llvm-project/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h:203:33: runtime error: reference binding to null pointer of type 'clang::DiagnosticIDs'

UndefinedBehaviorSanitizer: undefined-behavior /usr/local/google/home/fmayer/large/llvm-project/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h:203:33

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


  Commit: d1ba432533aafc52fc59158350af937a8b6b9538
      https://github.com/llvm/llvm-project/commit/d1ba432533aafc52fc59158350af937a8b6b9538
  Author: Brian Cain <bcain at quicinc.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lld/ELF/Arch/Hexagon.cpp
    M lld/test/ELF/hexagon-eflag.s

  Log Message:
  -----------
  [lld] select a default eflags for hexagon (#108431)

Empty archives are apparently routine in linux kernel builds, so instead
of asserting, we should handle this case with a sane default value.


  Commit: d0638ed0fd54ed7331737b99c19086b70d8bf48b
      https://github.com/llvm/llvm-project/commit/d0638ed0fd54ed7331737b99c19086b70d8bf48b
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  [bazel][NFC] Use globs to make `Vectorize` less brittle (#108644)

This avoids needing to update the rule every time there's a new
directory, e.g. SandboxVectorizer packages.


  Commit: ddcc601353db0464eb15a3e0258ec6789dd1602c
      https://github.com/llvm/llvm-project/commit/ddcc601353db0464eb15a3e0258ec6789dd1602c
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/test/Transforms/Coroutines/swift-async-dbg.ll

  Log Message:
  -----------
  [CoroSplit][DebugInfo] Adjust heuristic for moving DIScope of funclets (#108611)

CoroSplit has a heuristic where the scope line for funclets is adjusted
to match the line of the suspend intrinsic that caused the split. This
is useful as it avoids a jump on the line table from the original
function declaration to the line where the split happens.

However, very often using the line of the split is not ideal: if we can
avoid it, we should not have a line entry for the split location, as
this would cause breakpoints by line to match against two functions: the
funclet before and the funclet after the split.

This patch adjusts the heuristics to look for the first instruction with
a non-zero line number after the split. In other words, this patch makes
breakpoints on `await foo()` lines behave much more like a regular
function call.


  Commit: cfd0c4f8ed5c5a1ca62f8810acab7586b2248b35
      https://github.com/llvm/llvm-project/commit/cfd0c4f8ed5c5a1ca62f8810acab7586b2248b35
  Author: Akash Banerjee <Akash.Banerjee at amd.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp

  Log Message:
  -----------
  [OpenMP][MLIR] Fix code bug from #101707


  Commit: 77bab2a6f37af918a9133d1bb15551bd351b291e
      https://github.com/llvm/llvm-project/commit/77bab2a6f37af918a9133d1bb15551bd351b291e
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/unittests/IR/AsmWriterTest.cpp
    M llvm/unittests/IR/MetadataTest.cpp
    M llvm/unittests/IR/ValueTest.cpp
    M llvm/unittests/IR/VerifierTest.cpp
    M llvm/unittests/Support/ARMAttributeParser.cpp
    M llvm/unittests/Support/CSKYAttributeParserTest.cpp
    M llvm/unittests/Support/Chrono.cpp
    M llvm/unittests/Support/ErrorTest.cpp
    M llvm/unittests/Support/JSONTest.cpp
    M llvm/unittests/Support/ScopedPrinterTest.cpp
    M llvm/unittests/Support/WithColorTest.cpp
    M llvm/unittests/Support/YAMLIOTest.cpp

  Log Message:
  -----------
  [llvm][unittests] Strip unneeded use of raw_string_ostream::str() (NFC)

Avoid unneeded layer of indirection.


  Commit: 03618ceabd003be94190b068db11b607fd1108ef
      https://github.com/llvm/llvm-project/commit/03618ceabd003be94190b068db11b607fd1108ef
  Author: Chris B <chris.bieneman at me.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/test/CodeGenHLSL/this-assignment.hlsl

  Log Message:
  -----------
  [HLSL] Fix move assignment of `this` (#108445)

Under HLSL 202x+ move assignment can occur and when targeting `this`
move assignment was generating some really odd errors. This corrects the
errors by properly generating the `this` object reference for HLSL and
always treating it as a reference.

This mirrors the implementation added eariler for copy assignment, and
extends the test case to cover both move and copy assignment under HLSL
202x+.


  Commit: 1e3536ef3141d6429f3616af624b81b6d6ab2959
      https://github.com/llvm/llvm-project/commit/1e3536ef3141d6429f3616af624b81b6d6ab2959
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/reduced-val-extracted-and-externally-used.ll

  Log Message:
  -----------
  [SLP]Fix PR108620: Need to check, if the reduced value was transformed

Before trying to include the scalar into the list of
ExternallyUsedValues, need to check, if it was transformed in previous
iteration and use the transformed value, not the original one, to avoid
compiler crash when building external uses.

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


  Commit: 52b48a70d3752f9db36ddcfd26d0451c009b19fc
      https://github.com/llvm/llvm-project/commit/52b48a70d3752f9db36ddcfd26d0451c009b19fc
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/unittests/ADT/Interleave.cpp
    M llvm/unittests/Analysis/AssumeBundleQueriesTest.cpp
    M llvm/unittests/Analysis/CFGTest.cpp
    M llvm/unittests/Analysis/DXILResourceTest.cpp
    M llvm/unittests/Analysis/LazyCallGraphTest.cpp
    M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp
    M llvm/unittests/Analysis/ValueTrackingTest.cpp
    M llvm/unittests/Analysis/VectorUtilsTest.cpp
    M llvm/unittests/InterfaceStub/ELFYAMLTest.cpp
    M llvm/unittests/Transforms/Coroutines/ExtraRematTest.cpp
    M llvm/unittests/Transforms/Instrumentation/PGOInstrumentationTest.cpp
    M llvm/unittests/Transforms/Utils/MemTransferLowering.cpp

  Log Message:
  -----------
  [llvm][unittests] Strip unneeded use of raw_string_ostream::str() (NFC)

Avoid excess layer of indirection.


  Commit: 12d4769cb84b2b2e60f9776fa043c6ea16f08ebb
      https://github.com/llvm/llvm-project/commit/12d4769cb84b2b2e60f9776fa043c6ea16f08ebb
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp

  Log Message:
  -----------
  Revert "[MemProf] Streamline and avoid unnecessary context id duplication (#107918)" (#108652)

This reverts commit 524a028f69cdf25503912c396ebda7ebf0065ed2, but
manually so that follow on PR108086 /
ae5f1a78d3a930466f927989faac8e0b9d820a7b
is retained (NFC patch to convert tuple to a struct).


  Commit: c6c3803b7267d3e9e81e09fc23e56c58854e703e
      https://github.com/llvm/llvm-project/commit/c6c3803b7267d3e9e81e09fc23e56c58854e703e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/docs/RISCVUsage.rst

  Log Message:
  -----------
  [RISCV] Add documentation that Zvbc and Zvk* are supported through intrinsics. NFC (#108577)


  Commit: b7914dffd6eacfa20990a39aecd1e0d24cadc62b
      https://github.com/llvm/llvm-project/commit/b7914dffd6eacfa20990a39aecd1e0d24cadc62b
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/performance/AvoidEndlCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/performance/avoid-endl.cpp

  Log Message:
  -----------
  [clang-tidy] add default error message for performance-avoid-endl (#107867)

use std::endl as default message when matched expr does not have valid
source text

Fixes: #107859


  Commit: ca4973972bf1306b49413a76f2d0c25c3df711aa
      https://github.com/llvm/llvm-project/commit/ca4973972bf1306b49413a76f2d0c25c3df711aa
  Author: Matteo Franciolini <mfranciolini at tesla.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
    A mlir/test/Dialect/Mesh/inlining.mlir

  Log Message:
  -----------
  [mlir][mesh] Introduce `DialectInlinerInterface` for Mesh dialect (#108297)

The inliner interface does not implement any restrictions for inlining.


  Commit: 536bdc99e6ed2388426ce94d0bd75a61aecab396
      https://github.com/llvm/llvm-project/commit/536bdc99e6ed2388426ce94d0bd75a61aecab396
  Author: gulfemsavrun <gulfem at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp

  Log Message:
  -----------
  [Coverage] Skip empty profile name section (#108480)

llvm-cov reads __llvm_prf_names section in an object file to find the
profile names, and it instead reads __llvm_covnames section in binary
profile correlation mode when __llvm_prf_names section is omitted. This
patch ensures that it still reads __llvm_covnames section when there is
an empty __llvm_prf_names section.


  Commit: c010b72e9b4e3b1ae7467eb86102fc43c338fe19
      https://github.com/llvm/llvm-project/commit/c010b72e9b4e3b1ae7467eb86102fc43c338fe19
  Author: Abinaya Saravanan <quic_asaravan at quicinc.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonOptAddrMode.cpp
    A llvm/test/CodeGen/Hexagon/autohvx/addi-offset-opt-addr-mode.ll
    A llvm/test/CodeGen/Hexagon/autohvx/addi-opt-predicated-def-bug.ll
    M llvm/test/CodeGen/Hexagon/vgather-opt-addr.ll
    A llvm/test/CodeGen/MIR/Hexagon/addrmode-opt-nonreaching.mir

  Log Message:
  -----------
  [HEXAGON] AddrModeOpt support for HVX and optimize adds (#106368)

This patch does 3 things:
1. Add support for optimizing the address mode of HVX load/store
instructions
2. Reduce the value of Add instruction immediates by replacing with the
difference from other Addi instructions that share common base:

For Example, If we have the below sequence of instructions: r1 =
add(r2,# 1024) ... r3 = add(r2,# 1152) ... r4 = add(r2,# 1280)

Where the register r2 has the same reaching definition, They get
modified to the below sequence:

       r1 = add(r2,# 1024)
            ...
       r3 = add(r1,# 128)
            ...
       r4 = add(r1,# 256)
3. Fixes a bug pass where the addi instructions were modified based on a
predicated register definition, leading to incorrect output.

Eg:
         INST-1: if (p0) r2 = add(r13,# 128)
         INST-2: r1 = add(r2,# 1024)
         INST-3: r3 = add(r2,# 1152)
         INST-4: r5 = add(r2,# 1280)

In the above case, since r2's definition is predicated, we do not want
to modify the uses of r2 in INST-3/INST-4 with add(r1,#128/256)

4.Fixes a corner case

It looks like we never check whether the offset register is actually
live (not clobbered) at optimization site. Add the check whether it is
live at MBB entrance. The rest should have already been verified.

5. Fixes a bad codegen

For whatever reason we do transformation without checking if the value
in register actually reaches the user. This is second identical fix for
this pass.

   Co-authored-by: Anirudh Sundar <quic_sanirudh at quicinc.com>
   Co-authored-by: Sergei Larin <slarin at quicinc.com>


  Commit: 459a82e6890ff41e30d486f36c8c7ec22628bb7a
      https://github.com/llvm/llvm-project/commit/459a82e6890ff41e30d486f36c8c7ec22628bb7a
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/unittests/ADT/RewriteBufferTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFDebugFrameTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFDebugLineTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFFormValueTest.cpp
    M llvm/unittests/DebugInfo/GSYM/GSYMTest.cpp
    M llvm/unittests/IR/ConstantsTest.cpp
    M llvm/unittests/IR/ManglerTest.cpp
    M llvm/unittests/IR/MetadataTest.cpp
    M llvm/unittests/IR/ModuleSummaryIndexTest.cpp
    M llvm/unittests/MC/MCInstPrinter.cpp
    M llvm/unittests/MIR/MachineMetadata.cpp
    M llvm/unittests/Object/SymbolicFileTest.cpp
    M llvm/unittests/ProfileData/InstrProfTest.cpp
    M llvm/unittests/ProfileData/MemProfTest.cpp
    M llvm/unittests/Support/CommandLineTest.cpp
    M llvm/unittests/Support/CrashRecoveryTest.cpp
    M llvm/unittests/Support/ErrorTest.cpp
    M llvm/unittests/Support/FormatVariadicTest.cpp
    M llvm/unittests/Support/LEB128Test.cpp
    M llvm/unittests/Support/ModRefTest.cpp
    M llvm/unittests/Support/NativeFormatTests.cpp
    M llvm/unittests/Support/RISCVAttributeParserTest.cpp
    M llvm/unittests/Support/SourceMgrTest.cpp
    M llvm/unittests/Support/VirtualFileSystemTest.cpp
    M llvm/unittests/Support/YAMLIOTest.cpp
    M llvm/unittests/Target/RISCV/RISCVInstrInfoTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
    M llvm/unittests/XRay/FDRProducerConsumerTest.cpp
    M llvm/unittests/XRay/FDRRecordPrinterTest.cpp
    M llvm/unittests/XRay/FDRRecordsTest.cpp
    M llvm/unittests/XRay/FDRTraceWriterTest.cpp
    M llvm/unittests/tools/llvm-exegesis/ProgressMeterTest.cpp

  Log Message:
  -----------
  [llvm][unittests] Don't call raw_string_ostream::flush() (NFC)

raw_string_ostream::flush() is essentially a no-op (also specified in docs).
Don't call it in tests that aren't meant to test 'raw_string_ostream' itself.

p.s. remove a few redundant calls to raw_string_ostream::str()


  Commit: 0e34dbb4f452013eab89a0a8f04a436ff6c408d4
      https://github.com/llvm/llvm-project/commit/0e34dbb4f452013eab89a0a8f04a436ff6c408d4
  Author: Aart Bik <ajcbik at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp
    M mlir/test/Integration/Dialect/SparseTensor/python/test_SDDMM.py
    M mlir/test/Integration/Dialect/SparseTensor/python/test_SpMM.py
    A mlir/test/Integration/Dialect/SparseTensor/python/test_all_dense.py
    M mlir/test/Integration/Dialect/SparseTensor/python/test_output.py
    M mlir/test/Integration/Dialect/SparseTensor/python/test_stress.py
    M mlir/test/Integration/Dialect/SparseTensor/python/tools/sparsifier.py

  Log Message:
  -----------
  [mlir][sparse] fix bug with all-dense assembler (#108615)

When only all-dense "sparse" tensors occur in a function prototype, the
assembler would skip the method conversion purely based on input/output
counts. It should rewrite based on the presence of any annotation,
however.


  Commit: d3cdf0f2220cb913092934d7bf08c89951d56f8d
      https://github.com/llvm/llvm-project/commit/d3cdf0f2220cb913092934d7bf08c89951d56f8d
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    A llvm/include/llvm/Support/OptionStrCmp.h
    M llvm/lib/Option/OptTable.cpp
    M llvm/lib/Option/Option.cpp
    M llvm/lib/Support/CMakeLists.txt
    A llvm/lib/Support/OptionStrCmp.cpp
    M llvm/utils/TableGen/Common/OptEmitter.cpp
    M llvm/utils/TableGen/Common/OptEmitter.h
    M llvm/utils/TableGen/OptParserEmitter.cpp
    M llvm/utils/TableGen/OptRSTEmitter.cpp

  Log Message:
  -----------
  [LLVM][Option] Refactor option name comparison (#108219)

Move common functions shared by TableGen Option Emitter
and Options library to Support:
- Move `StrCmpOptionName` and base it on the existing version
  in OptTable.cpp, with an additional mode to control fall back to
  case insensitive comparison.
- Add `StrCmpOptionPrefixes` to compare prefixes and use zip() to
  iterate through lists of prefixes.
- Rename `CompareOptionRecords` to less ambiguous name 
  `IsOptionRecordLess`.
- Merge 2 back-to-back ifs with same condition in
  `IsOptionRecordLess`.

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


  Commit: 1b913cde2a4e3cf3b180edd0477a8e85f61886ce
      https://github.com/llvm/llvm-project/commit/1b913cde2a4e3cf3b180edd0477a8e85f61886ce
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/CodeGen/MacroPPCallbacks.cpp
    M clang/lib/CodeGen/SanitizerMetadata.cpp
    M clang/lib/CodeGen/Targets/X86.cpp

  Log Message:
  -----------
  [clang][CodeGen] Strip unneeded calls to raw_string_ostream::str() (NFC)

Try to avoid excess layer of indirection when possible.

p.s. Remove a call to raw_string_ostream::flush() which is a no-op.


  Commit: d2009652ab902d228783b3db848447975441b902
      https://github.com/llvm/llvm-project/commit/d2009652ab902d228783b3db848447975441b902
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn

  Log Message:
  -----------
  [gn build] Port d3cdf0f2220c


  Commit: cab1ae9fa2d63b8f0f4bc5e0aa85c53704cb0079
      https://github.com/llvm/llvm-project/commit/cab1ae9fa2d63b8f0f4bc5e0aa85c53704cb0079
  Author: joaosaffran <126493771+joaosaffran at users.noreply.github.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/hlsl/hlsl_detail.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    A clang/test/CodeGenHLSL/builtins/asuint.hlsl
    A clang/test/SemaHLSL/BuiltIns/asuint-errors.hlsl

  Log Message:
  -----------
  Adding `asuint`  implementation to hlsl (#107292)

Implements support for the `asuint` HLSL function casting behaviour.
Addressing the `splitdouble` scenario will be addressed in a future PR. 

Fixes: #70097

---------

Co-authored-by: Joao Saffran <jderezende at microsoft.com>
Co-authored-by: Justin Bogner <mail at justinbogner.com>


  Commit: 52b3c360c1cf69c48ba182b833045237af5955c0
      https://github.com/llvm/llvm-project/commit/52b3c360c1cf69c48ba182b833045237af5955c0
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsDirectX.td

  Log Message:
  -----------
  [NFC][DirectX] Remove rcp dx intrinsic (#108626)

The code that used the rcp intrinsic was replaced. This change removes
an unused intrinsic.


  Commit: d6d4a48e0e12f2d5b671c60437e7f55e2c5a506f
      https://github.com/llvm/llvm-project/commit/d6d4a48e0e12f2d5b671c60437e7f55e2c5a506f
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
    M llvm/test/MC/WebAssembly/eh-assembly.s

  Log Message:
  -----------
  [WebAssembly] Add type checking for 'throw' (#108641)

This was previously missing.


  Commit: 7836603062ea9bb519bb68187024a58bb7c2f31b
      https://github.com/llvm/llvm-project/commit/7836603062ea9bb519bb68187024a58bb7c2f31b
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn

  Log Message:
  -----------
  [gn build] Port cab1ae9fa2d6


  Commit: 9ceb9676678ad979a0b767450855d7852ce6a553
      https://github.com/llvm/llvm-project/commit/9ceb9676678ad979a0b767450855d7852ce6a553
  Author: Henrik G. Olsson <hnrklssn at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    A clang/test/utils/update-verify-tests/Inputs/duplicate-diag.c
    A clang/test/utils/update-verify-tests/Inputs/duplicate-diag.c.expected
    A clang/test/utils/update-verify-tests/Inputs/infer-indentation.c
    A clang/test/utils/update-verify-tests/Inputs/infer-indentation.c.expected
    A clang/test/utils/update-verify-tests/Inputs/leave-existing-diags.c
    A clang/test/utils/update-verify-tests/Inputs/leave-existing-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/multiple-errors.c
    A clang/test/utils/update-verify-tests/Inputs/multiple-errors.c.expected
    A clang/test/utils/update-verify-tests/Inputs/multiple-missing-errors-same-line.c
    A clang/test/utils/update-verify-tests/Inputs/multiple-missing-errors-same-line.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-checks.c
    A clang/test/utils/update-verify-tests/Inputs/no-checks.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-diags.c
    A clang/test/utils/update-verify-tests/Inputs/no-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-expected-diags.c
    A clang/test/utils/update-verify-tests/Inputs/no-expected-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/non-default-prefix.c
    A clang/test/utils/update-verify-tests/Inputs/non-default-prefix.c.expected
    A clang/test/utils/update-verify-tests/Inputs/update-same-line.c
    A clang/test/utils/update-verify-tests/Inputs/update-same-line.c.expected
    A clang/test/utils/update-verify-tests/Inputs/update-single-check.c
    A clang/test/utils/update-verify-tests/Inputs/update-single-check.c.expected
    A clang/test/utils/update-verify-tests/duplicate-diag.test
    A clang/test/utils/update-verify-tests/infer-indentation.test
    A clang/test/utils/update-verify-tests/leave-existing-diags.test
    A clang/test/utils/update-verify-tests/lit.local.cfg
    A clang/test/utils/update-verify-tests/multiple-errors.test
    A clang/test/utils/update-verify-tests/multiple-missing-errors-same-line.test
    A clang/test/utils/update-verify-tests/no-checks.test
    A clang/test/utils/update-verify-tests/no-diags.test
    A clang/test/utils/update-verify-tests/no-expected-diags.test
    A clang/test/utils/update-verify-tests/non-default-prefix.test
    A clang/test/utils/update-verify-tests/update-same-line.test
    A clang/test/utils/update-verify-tests/update-single-check.test
    A clang/utils/UpdateVerifyTests/core.py
    A clang/utils/update-verify-tests.py

  Log Message:
  -----------
  Reland "[Utils] add update-verify-tests.py" (#108630)" (#108658)

This relands commit d4f41befb7256f8e8378ae358b2b3d802454d6a4 which was
reverted by b7e585b95e241d0506b6f71d53ff5b6e72a9c8f4.

This version ignores differences in line endings in the diff tests to
make sure the tests work as intended on Windows.

Original description below:
Adds a python script to automatically take output from a failed clang
-verify test and update the test case(s) to expect the new behaviour.


  Commit: 00f239e48ab9761a963839e118ee6cc4ee42e531
      https://github.com/llvm/llvm-project/commit/00f239e48ab9761a963839e118ee6cc4ee42e531
  Author: Arteen Abrishami <114886331+arteen1000 at users.noreply.github.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.h
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.td
    M mlir/lib/Dialect/Tosa/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/Tosa/Transforms/TosaReduceTransposes.cpp
    A mlir/test/Dialect/Tosa/tosa-reduce-transposes.mlir

  Log Message:
  -----------
  [MLIR][TOSA] Add --tosa-reduce-transposes pass (#108260)

----------
Motivation:
----------

Some legalization pathways introduce redundant tosa.TRANSPOSE
operations that result in avoidable data movement. For example,
PyTorch -> TOSA contains a lot of unnecessary transposes due
to conversions between NCHW and NHWC.

We wish to remove all the ones that we can, since in general
it is possible to remove the overwhelming majority.

------------
Changes Made:
------------

- Add the --tosa-reduce-transposes pass
- Add TosaElementwiseOperator trait.

-------------------
High-Level Overview:
-------------------

The pass works through the transpose operators in the program. It begins
at some
transpose operator with an associated permutations tensor. It traverses
upwards
through the dependencies of this transpose and verifies that we
encounter only
operators with the TosaElementwiseOperator trait and terminate in either
constants, reshapes, or transposes.

We then evaluate whether there are any additional restrictions (the
transposes
it terminates in must invert the one we began at, and the reshapes must
be ones
in which we can fold the transpose into), and then we hoist the
transpose through
the intervening operators, folding it at the constants, reshapes, and
transposes.

Finally, we ensure that we do not need both the transposed form (the
form that
had the transpose hoisted through it) and the untransposed form (which
it was prior),
by analyzing the usages of those dependent operators of a given
transpose we are
attempting to hoist and replace.

If they are such that it would require both forms to be necessary, then
we do not
replace the hoisted transpose, causing the new chain to be dead.
Otherwise, we do
and the old chain (untransposed form) becomes dead. Only one chain will
ever then
be live, resulting in no duplication.

We then perform a simple one-pass DCE, so no canonicalization is
necessary.

--------------
Impact of Pass:
--------------

Patching the dense_resource artifacts (from PyTorch) with dense
attributes to
permit constant folding, we receive the following results.

Note that data movement represents total transpose data movement,
calculated
by noting which dimensions moved during the transpose.

///////////
MobilenetV3:
///////////

BEFORE total data movement: 11798776 B (11.25 MiB)
AFTER total data movement: 2998016 B (2.86 MiB)
74.6% of data movement removed.

BEFORE transposes: 82
AFTER transposes: 20
75.6% of transposes removed.

////////
ResNet18:
////////

BEFORE total data movement: 20596556 B (19.64 MiB)
AFTER total data movement: 1003520 B (0.96 MiB)
95.2% of data movement removed.

BEFORE transposes: 56
AFTER transposes: 5
91.1% of transposes removed.

////////
ResNet50:
////////

BEFORE total data movement: 83236172 B (79.3 MiB)
AFTER total data movement: 3010560 B (2.87 MiB)
96.4% of data movement removed

BEFORE transposes: 120
AFTER transposes: 7
94.2% of transposes removed.

/////////
ResNet101:
/////////

BEFORE total data movement: 124336460 B (118.58 MiB)
AFTER total data movement: 3010560 B (2.87 MiB)
97.6% of data movement removed

BEFORE transposes: 239
AFTER transposes: 7
97.1% of transposes removed.

/////////
ResNet152:
/////////

BEFORE total data movement: 175052108 B (166.94 MiB)
AFTER total data movement: 3010560 B (2.87 MiB)
98.3% of data movement removed

BEFORE transposes: 358
AFTER transposes: 7
98.0% of transposes removed.

////////
Overview:
////////

We see that we remove up to 98% of transposes and eliminate
up to 98.3% of redundant transpose data movement.

In the context of ResNet50, with 120 inferences per second,
we reduce dynamic transpose data bandwidth from 9.29 GiB/s
to 344.4 MiB/s.

-----------
Future Work:
-----------

(1) Evaluate tradeoffs with permitting ConstOp to be duplicated across
hoisted
    transposes with different permutation tensors.

(2) Expand the class of foldable upstream ReshapeOp we permit beyond
    N -> 1x1x...x1xNx1x...x1x1.

(3) Enchance the pass to permit folding arbitrary transpose pairs,
beyond
    those that form the identity.

(4) Add support for more instructions besides TosaElementwiseOperator as
    the intervening ones (for example, the reduce_* operators).

(5) Support hoisting transposes up to an input parameter.

Signed-off-by: Arteen Abrishami <arteen.abrishami at arm.com>


  Commit: 30e0706f3db131462d62e9e181f94f816427a07e
      https://github.com/llvm/llvm-project/commit/30e0706f3db131462d62e9e181f94f816427a07e
  Author: Arteen Abrishami <114886331+arteen1000 at users.noreply.github.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/performance/AvoidEndlCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/return-const-ref-from-parameter.rst
    M clang-tools-extra/test/clang-tidy/checkers/performance/avoid-endl.cpp
    M clang/docs/ReleaseNotes.rst
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/Basic/AArch64SVEACLETypes.def
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Basic/LangStandards.def
    M clang/include/clang/Basic/TargetInfo.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Sema/SemaRISCV.h
    M clang/include/clang/Tooling/CompilationDatabase.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Basic/LangOptions.cpp
    M clang/lib/Basic/LangStandards.cpp
    M clang/lib/Basic/Targets/RISCV.cpp
    M clang/lib/Basic/Targets/X86.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/MacroPPCallbacks.cpp
    M clang/lib/CodeGen/SanitizerMetadata.cpp
    M clang/lib/CodeGen/Targets/RISCV.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/hlsl/hlsl_detail.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Headers/module.modulemap
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Sema/DeclSpec.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaRISCV.cpp
    M clang/lib/Tooling/CMakeLists.txt
    A clang/lib/Tooling/LocateToolCompilationDatabase.cpp
    M clang/test/AST/ByteCode/cxx20.cpp
    M clang/test/AST/ByteCode/hlsl.hlsl
    A clang/test/C/C23/n3029.c
    M clang/test/ClangScanDeps/modules-extern-submodule.c
    M clang/test/ClangScanDeps/modules-full-output-tu-order.c
    M clang/test/ClangScanDeps/modules-has-include-umbrella-header.c
    M clang/test/ClangScanDeps/modules-header-sharing.m
    M clang/test/ClangScanDeps/modules-implementation-module-map.c
    M clang/test/ClangScanDeps/modules-implementation-private.m
    M clang/test/ClangScanDeps/modules-priv-fw-from-pub.m
    A clang/test/ClangScanDeps/resolve-executable-path.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-build-pair-mma.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-pair-mma-types.c
    M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-errors.c
    M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-x64-error.c
    M clang/test/CodeGen/X86/avx10_2satcvtds-builtins-errors.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_add.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_add_sub_za16.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_clamp.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvtl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvtn.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_faminmax.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_fmlas16.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_fp_dots.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_frint.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_int_dots.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_max.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_maxnm.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_min.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_minnm.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mla.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlal.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlall.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mls.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlsl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_read.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sqdmulh.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sub.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vdot.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_add.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_qrshr.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_rshl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_write.c
    M clang/test/CodeGen/aarch64-sme2p1-intrinsics/acle_sme2p1_movaz.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_reinterpret-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_reinterpret.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef4.c
    M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_luti.c
    M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_tbl2-bfloat.c
    M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_tbl2.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_create2_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_create4_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_get2_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_get4_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_ld1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_ldnt1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_loads.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_pext.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_qcvtn.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_qrshr.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_set2_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_set4_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_st1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_stnt1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_store.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_undef_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_while_x2.c
    M clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_get_neonq.c
    M clang/test/CodeGen/attr-counted-by.c
    A clang/test/CodeGen/attr-target-clones-riscv-invalid.c
    A clang/test/CodeGen/attr-target-clones-riscv.c
    M clang/test/CodeGen/svboolx2_t.cpp
    M clang/test/CodeGen/svboolx4_t.cpp
    M clang/test/CodeGen/target-builtin-noerror.c
    M clang/test/CodeGenCXX/aarch64-mangle-sve-vectors.cpp
    M clang/test/CodeGenCXX/aarch64-sve-vector-init.cpp
    A clang/test/CodeGenCXX/attr-target-clones-riscv.cpp
    A clang/test/CodeGenHLSL/builtins/asuint.hlsl
    M clang/test/CodeGenHLSL/this-assignment.hlsl
    M clang/test/Driver/x86-march.c
    M clang/test/Frontend/x86-target-cpu.c
    M clang/test/Misc/target-invalid-cpu-note/x86.c
    M clang/test/Misc/warning-flags.c
    M clang/test/OpenMP/bug57757.cpp
    M clang/test/ParserHLSL/group_shared.hlsl
    M clang/test/ParserHLSL/group_shared_202x.hlsl
    M clang/test/ParserHLSL/invalid_inside_cb.hlsl
    M clang/test/Preprocessor/predefined-arch-macros.c
    M clang/test/Preprocessor/predefined-macros-hlsl.hlsl
    M clang/test/Sema/enum.c
    A clang/test/SemaCXX/attr-target-clones-riscv.cpp
    M clang/test/SemaCXX/constant-expression-cxx11.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-libc-functions.cpp
    A clang/test/SemaHLSL/BuiltIns/asuint-errors.hlsl
    M clang/test/SemaHLSL/group_shared.hlsl
    M clang/test/SemaHLSL/group_shared_202x.hlsl
    A clang/test/utils/update-verify-tests/Inputs/duplicate-diag.c
    A clang/test/utils/update-verify-tests/Inputs/duplicate-diag.c.expected
    A clang/test/utils/update-verify-tests/Inputs/infer-indentation.c
    A clang/test/utils/update-verify-tests/Inputs/infer-indentation.c.expected
    A clang/test/utils/update-verify-tests/Inputs/leave-existing-diags.c
    A clang/test/utils/update-verify-tests/Inputs/leave-existing-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/multiple-errors.c
    A clang/test/utils/update-verify-tests/Inputs/multiple-errors.c.expected
    A clang/test/utils/update-verify-tests/Inputs/multiple-missing-errors-same-line.c
    A clang/test/utils/update-verify-tests/Inputs/multiple-missing-errors-same-line.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-checks.c
    A clang/test/utils/update-verify-tests/Inputs/no-checks.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-diags.c
    A clang/test/utils/update-verify-tests/Inputs/no-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-expected-diags.c
    A clang/test/utils/update-verify-tests/Inputs/no-expected-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/non-default-prefix.c
    A clang/test/utils/update-verify-tests/Inputs/non-default-prefix.c.expected
    A clang/test/utils/update-verify-tests/Inputs/update-same-line.c
    A clang/test/utils/update-verify-tests/Inputs/update-same-line.c.expected
    A clang/test/utils/update-verify-tests/Inputs/update-single-check.c
    A clang/test/utils/update-verify-tests/Inputs/update-single-check.c.expected
    A clang/test/utils/update-verify-tests/duplicate-diag.test
    A clang/test/utils/update-verify-tests/infer-indentation.test
    A clang/test/utils/update-verify-tests/leave-existing-diags.test
    A clang/test/utils/update-verify-tests/lit.local.cfg
    A clang/test/utils/update-verify-tests/multiple-errors.test
    A clang/test/utils/update-verify-tests/multiple-missing-errors-same-line.test
    A clang/test/utils/update-verify-tests/no-checks.test
    A clang/test/utils/update-verify-tests/no-diags.test
    A clang/test/utils/update-verify-tests/no-expected-diags.test
    A clang/test/utils/update-verify-tests/non-default-prefix.test
    A clang/test/utils/update-verify-tests/update-same-line.test
    A clang/test/utils/update-verify-tests/update-single-check.test
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp
    M clang/utils/TableGen/ClangSACheckersEmitter.cpp
    M clang/utils/TableGen/ClangSyntaxEmitter.cpp
    M clang/utils/TableGen/ClangTypeNodesEmitter.cpp
    M clang/utils/TableGen/MveEmitter.cpp
    M clang/utils/TableGen/NeonEmitter.cpp
    M clang/utils/TableGen/RISCVVEmitter.cpp
    M clang/utils/TableGen/SveEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h
    A clang/utils/UpdateVerifyTests/core.py
    A clang/utils/update-verify-tests.py
    M clang/www/c_status.html
    M compiler-rt/lib/builtins/cpu_model/x86.c
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/test/Lower/OpenMP/atomic-read.f90
    M flang/test/Lower/OpenMP/atomic-update.f90
    M flang/test/Lower/OpenMP/parallel.f90
    A flang/test/Lower/OpenMP/shared-loop.f90
    M flang/test/Lower/OpenMP/wsloop-chunks.f90
    M flang/test/Lower/OpenMP/wsloop-monotonic.f90
    M flang/test/Lower/OpenMP/wsloop-nonmonotonic.f90
    M flang/test/Lower/OpenMP/wsloop-schedule.f90
    M flang/test/Lower/OpenMP/wsloop.f90
    M flang/test/Semantics/OpenMP/do20.f90
    M flang/test/Semantics/OpenMP/implicit-dsa.f90
    M flang/test/Semantics/OpenMP/symbol01.f90
    M flang/test/Semantics/OpenMP/symbol02.f90
    M flang/test/Semantics/OpenMP/symbol03.f90
    M flang/test/Semantics/OpenMP/symbol07.f90
    M flang/test/Semantics/OpenMP/symbol09.f90
    M libc/src/__support/OSUtil/linux/vdso.cpp
    M libc/src/__support/OSUtil/linux/vdso_sym.h
    M libc/src/__support/time/linux/CMakeLists.txt
    M libc/src/__support/time/linux/clock_gettime.h
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/docs/Status/Cxx20Papers.csv
    M libcxx/include/chrono
    M libcxx/include/experimental/__simd/vec_ext.h
    M libcxx/test/libcxx/diagnostics/chrono.nodiscard.verify.cpp
    M libcxx/test/std/time/time.zone/time.zone.timezone/time.zone.members/sys_info.zdump.pass.cpp
    M lld/COFF/Chunks.cpp
    M lld/COFF/Chunks.h
    M lld/COFF/InputFiles.cpp
    M lld/COFF/InputFiles.h
    M lld/COFF/MapFile.cpp
    M lld/COFF/MarkLive.cpp
    M lld/COFF/PDB.cpp
    M lld/COFF/Symbols.cpp
    M lld/COFF/Symbols.h
    M lld/COFF/Writer.cpp
    M lld/ELF/Arch/Hexagon.cpp
    M lld/test/COFF/arm64ec-import.test
    M lld/test/ELF/hexagon-eflag.s
    M lldb/docs/resources/sbapi.rst
    M lldb/examples/synthetic/gnu_libstdcpp.py
    M lldb/include/lldb/API/SBValue.h
    M lldb/include/lldb/Host/Socket.h
    M lldb/include/lldb/Host/common/TCPSocket.h
    M lldb/include/lldb/Host/common/UDPSocket.h
    M lldb/include/lldb/Host/posix/DomainSocket.h
    M lldb/source/API/SBValue.cpp
    M lldb/source/Core/Progress.cpp
    M lldb/source/Host/common/Socket.cpp
    M lldb/source/Host/common/TCPSocket.cpp
    M lldb/source/Host/common/UDPSocket.cpp
    M lldb/source/Host/posix/DomainSocket.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.h
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
    M lldb/source/Plugins/Process/FreeBSD/NativeProcessFreeBSD.cpp
    M lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/TestDataFormatterLibcxxStringSimulator.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/main.cpp
    M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py
    M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
    M lldb/test/API/tools/lldb-dap/stackTrace/subtleFrames/Makefile
    M lldb/unittests/Host/SocketTest.cpp
    M llvm/docs/RISCVUsage.rst
    M llvm/include/llvm/Analysis/BranchProbabilityInfo.h
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/SandboxIR/Pass.h
    M llvm/include/llvm/SandboxIR/PassManager.h
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/SandboxIRValues.def
    M llvm/include/llvm/Support/AMDGPUAddrSpace.h
    A llvm/include/llvm/Support/OptionStrCmp.h
    M llvm/include/llvm/TargetParser/X86TargetParser.def
    M llvm/include/llvm/TargetParser/X86TargetParser.h
    M llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
    A llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
    M llvm/lib/Analysis/IRSimilarityIdentifier.cpp
    M llvm/lib/CodeGen/EarlyIfConversion.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Option/OptTable.cpp
    M llvm/lib/Option/Option.cpp
    M llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp
    M llvm/lib/SandboxIR/PassManager.cpp
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/Support/CMakeLists.txt
    A llvm/lib/Support/OptionStrCmp.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonOptAddrMode.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp
    M llvm/lib/Target/RISCV/RISCVCallingConv.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
    M llvm/lib/Target/X86/X86.td
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86PfmCounters.td
    M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.h
    M llvm/lib/TargetParser/Host.cpp
    M llvm/lib/TargetParser/X86TargetParser.cpp
    M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
    M llvm/lib/Transforms/Coroutines/CoroInternal.h
    A llvm/lib/Transforms/Coroutines/CoroShape.h
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/lib/Transforms/Coroutines/Coroutines.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/lib/Transforms/Vectorize/CMakeLists.txt
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/CodeGen/AArch64/abs.ll
    M llvm/test/CodeGen/AArch64/expand-select.ll
    M llvm/test/CodeGen/AArch64/fcmp.ll
    M llvm/test/CodeGen/AArch64/icmp.ll
    M llvm/test/CodeGen/AArch64/shift.ll
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32-wave32.mir
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w32.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.prefetch.data.ll
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain.mir
    A llvm/test/CodeGen/AMDGPU/si-init-whole-wave.mir
    M llvm/test/CodeGen/ARM/big-endian-vmov.ll
    A llvm/test/CodeGen/Hexagon/autohvx/addi-offset-opt-addr-mode.ll
    A llvm/test/CodeGen/Hexagon/autohvx/addi-opt-predicated-def-bug.ll
    M llvm/test/CodeGen/Hexagon/vgather-opt-addr.ll
    M llvm/test/CodeGen/MIR/AMDGPU/long-branch-reg-all-sgpr-used.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-after-pei.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg-debug.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-no-ir.mir
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info.ll
    A llvm/test/CodeGen/MIR/Hexagon/addrmode-opt-nonreaching.mir
    M llvm/test/CodeGen/Thumb2/mve-vmovimm.ll
    M llvm/test/CodeGen/X86/bypass-slow-division-64.ll
    M llvm/test/CodeGen/X86/cmp16.ll
    M llvm/test/CodeGen/X86/cpus-amd.ll
    M llvm/test/CodeGen/X86/rdpru.ll
    M llvm/test/CodeGen/X86/shuffle-as-shifts.ll
    M llvm/test/CodeGen/X86/slow-unaligned-mem.ll
    M llvm/test/CodeGen/X86/sqrt-fastmath-tune.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-permilpd-avx512.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-permilps-avx512.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-unpckpd-avx512.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-unpckps-avx512.ll
    A llvm/test/CodeGen/X86/vector-compress.ll
    M llvm/test/CodeGen/X86/vector-shuffle-fast-per-lane.ll
    M llvm/test/CodeGen/X86/vpdpwssd.ll
    M llvm/test/CodeGen/X86/x86-64-double-shifts-var.ll
    A llvm/test/CodeGen/Xtensa/frameaddr-returnaddr.ll
    M llvm/test/MC/WebAssembly/basic-assembly.s
    A llvm/test/MC/WebAssembly/eh-assembly.s
    M llvm/test/MC/X86/x86_long_nop.s
    M llvm/test/Transforms/Coroutines/swift-async-dbg.ll
    M llvm/test/Transforms/InstCombine/getelementptr.ll
    A llvm/test/Transforms/InstCombine/phi-with-multiple-unsimplifiable-values.ll
    M llvm/test/Transforms/InstCombine/pow-1.ll
    M llvm/test/Transforms/LoopUnroll/X86/call-remark.ll
    A llvm/test/Transforms/SLPVectorizer/X86/phi-node-reshuffled-part.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr63668.ll
    A llvm/test/Transforms/SLPVectorizer/X86/reduced-val-extracted-and-externally-used.ll
    A llvm/test/Transforms/SandboxVectorizer/default_pass_pipeline.ll
    A llvm/test/Transforms/SandboxVectorizer/user_pass_pipeline.ll
    M llvm/test/Transforms/VectorCombine/AArch64/shrink-types.ll
    A llvm/test/Verifier/AMDGPU/intrinsic-prefetch.ll
    M llvm/test/tools/llvm-ml/rip_relative_addressing.asm
    M llvm/tools/dsymutil/MachODebugMapParser.cpp
    M llvm/tools/llvm-debuginfo-analyzer/llvm-debuginfo-analyzer.cpp
    M llvm/tools/llvm-dwarfdump/Statistics.cpp
    M llvm/tools/llvm-exegesis/lib/LlvmState.h
    M llvm/tools/llvm-libtool-darwin/llvm-libtool-darwin.cpp
    M llvm/tools/llvm-lipo/llvm-lipo.cpp
    M llvm/tools/llvm-readobj/ARMWinEHPrinter.cpp
    M llvm/tools/llvm-readobj/ELFDumper.cpp
    M llvm/tools/llvm-size/llvm-size.cpp
    M llvm/tools/llvm-xray/xray-graph.cpp
    M llvm/unittests/ADT/Interleave.cpp
    M llvm/unittests/ADT/RewriteBufferTest.cpp
    M llvm/unittests/Analysis/AssumeBundleQueriesTest.cpp
    M llvm/unittests/Analysis/CFGTest.cpp
    M llvm/unittests/Analysis/DXILResourceTest.cpp
    M llvm/unittests/Analysis/LazyCallGraphTest.cpp
    M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp
    M llvm/unittests/Analysis/ValueTrackingTest.cpp
    M llvm/unittests/Analysis/VectorUtilsTest.cpp
    M llvm/unittests/Bitcode/BitReaderTest.cpp
    M llvm/unittests/CodeGen/GlobalISel/GISelMITest.cpp
    M llvm/unittests/CodeGen/GlobalISel/LegalizerTest.cpp
    M llvm/unittests/CodeGen/MachineInstrTest.cpp
    M llvm/unittests/CodeGen/MachineOperandTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFDebugFrameTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFDebugLineTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFFormValueTest.cpp
    M llvm/unittests/DebugInfo/GSYM/GSYMTest.cpp
    M llvm/unittests/IR/AsmWriterTest.cpp
    M llvm/unittests/IR/ConstantsTest.cpp
    M llvm/unittests/IR/ManglerTest.cpp
    M llvm/unittests/IR/MetadataTest.cpp
    M llvm/unittests/IR/ModuleSummaryIndexTest.cpp
    M llvm/unittests/IR/ValueTest.cpp
    M llvm/unittests/IR/VerifierTest.cpp
    M llvm/unittests/InterfaceStub/ELFYAMLTest.cpp
    M llvm/unittests/MC/MCInstPrinter.cpp
    M llvm/unittests/MIR/MachineMetadata.cpp
    M llvm/unittests/Object/SymbolicFileTest.cpp
    M llvm/unittests/ProfileData/InstrProfTest.cpp
    M llvm/unittests/ProfileData/MemProfTest.cpp
    M llvm/unittests/SandboxIR/PassTest.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp
    M llvm/unittests/Support/ARMAttributeParser.cpp
    M llvm/unittests/Support/CSKYAttributeParserTest.cpp
    M llvm/unittests/Support/Chrono.cpp
    M llvm/unittests/Support/CommandLineTest.cpp
    M llvm/unittests/Support/CrashRecoveryTest.cpp
    M llvm/unittests/Support/ErrorTest.cpp
    M llvm/unittests/Support/FormatVariadicTest.cpp
    M llvm/unittests/Support/JSONTest.cpp
    M llvm/unittests/Support/LEB128Test.cpp
    M llvm/unittests/Support/ModRefTest.cpp
    M llvm/unittests/Support/NativeFormatTests.cpp
    M llvm/unittests/Support/RISCVAttributeParserTest.cpp
    M llvm/unittests/Support/ScopedPrinterTest.cpp
    M llvm/unittests/Support/SourceMgrTest.cpp
    M llvm/unittests/Support/VirtualFileSystemTest.cpp
    M llvm/unittests/Support/WithColorTest.cpp
    M llvm/unittests/Support/YAMLIOTest.cpp
    M llvm/unittests/Target/RISCV/RISCVInstrInfoTest.cpp
    M llvm/unittests/Transforms/Coroutines/ExtraRematTest.cpp
    M llvm/unittests/Transforms/Instrumentation/PGOInstrumentationTest.cpp
    M llvm/unittests/Transforms/Utils/MemTransferLowering.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
    M llvm/unittests/XRay/FDRProducerConsumerTest.cpp
    M llvm/unittests/XRay/FDRRecordPrinterTest.cpp
    M llvm/unittests/XRay/FDRRecordsTest.cpp
    M llvm/unittests/XRay/FDRTraceWriterTest.cpp
    M llvm/unittests/tools/llvm-exegesis/ProgressMeterTest.cpp
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp
    M llvm/utils/TableGen/Common/OptEmitter.cpp
    M llvm/utils/TableGen/Common/OptEmitter.h
    M llvm/utils/TableGen/OptParserEmitter.cpp
    M llvm/utils/TableGen/OptRSTEmitter.cpp
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Tooling/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOpBase.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.h
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.td
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp
    M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp
    M mlir/lib/Dialect/Tosa/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/Tosa/Transforms/TosaReduceTransposes.cpp
    M mlir/lib/Target/LLVMIR/Dialect/NVVM/LLVMIRToNVVMTranslation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
    M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
    M mlir/test/Dialect/Linalg/transform-tile-and-winograd-rewrite.mlir
    M mlir/test/Dialect/Linalg/winograd-conv2d-rewrite.mlir
    M mlir/test/Dialect/Linalg/winograd-conv2d.mlir
    A mlir/test/Dialect/Mesh/inlining.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir
    A mlir/test/Dialect/Tosa/tosa-reduce-transposes.mlir
    M mlir/test/Integration/Dialect/SparseTensor/python/test_SDDMM.py
    M mlir/test/Integration/Dialect/SparseTensor/python/test_SpMM.py
    A mlir/test/Integration/Dialect/SparseTensor/python/test_all_dense.py
    M mlir/test/Integration/Dialect/SparseTensor/python/test_output.py
    M mlir/test/Integration/Dialect/SparseTensor/python/test_stress.py
    M mlir/test/Integration/Dialect/SparseTensor/python/tools/sparsifier.py
    M mlir/test/Target/LLVMIR/Import/nvvmir.ll
    M mlir/test/Target/LLVMIR/nvvmir.mlir
    M mlir/test/mlir-tblgen/openmp-clause-ops.td
    M mlir/test/mlir-tblgen/openmp-ops-verify.td
    M mlir/test/mlir-tblgen/openmp-ops.td
    M mlir/tools/mlir-tblgen/OmpOpGen.cpp
    M offload/DeviceRTL/CMakeLists.txt
    M offload/DeviceRTL/include/DeviceTypes.h
    M offload/include/Shared/Environment.h
    R offload/include/Shared/Types.h
    M offload/include/Shared/Utils.h
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.4

[skip ci]


  Commit: bfeba7fce46e2a05cddad483f46f748464b87702
      https://github.com/llvm/llvm-project/commit/bfeba7fce46e2a05cddad483f46f748464b87702
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/performance/AvoidEndlCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/return-const-ref-from-parameter.rst
    M clang-tools-extra/test/clang-tidy/checkers/performance/avoid-endl.cpp
    M clang/docs/ReleaseNotes.rst
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/Basic/AArch64SVEACLETypes.def
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Basic/LangStandards.def
    M clang/include/clang/Basic/TargetInfo.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Sema/SemaRISCV.h
    M clang/include/clang/Tooling/CompilationDatabase.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Basic/LangOptions.cpp
    M clang/lib/Basic/LangStandards.cpp
    M clang/lib/Basic/Targets/RISCV.cpp
    M clang/lib/Basic/Targets/X86.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/MacroPPCallbacks.cpp
    M clang/lib/CodeGen/SanitizerMetadata.cpp
    M clang/lib/CodeGen/Targets/RISCV.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/hlsl/hlsl_detail.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Headers/module.modulemap
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Sema/DeclSpec.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaRISCV.cpp
    M clang/lib/Tooling/CMakeLists.txt
    A clang/lib/Tooling/LocateToolCompilationDatabase.cpp
    M clang/test/AST/ByteCode/cxx20.cpp
    M clang/test/AST/ByteCode/hlsl.hlsl
    A clang/test/C/C23/n3029.c
    M clang/test/ClangScanDeps/modules-extern-submodule.c
    M clang/test/ClangScanDeps/modules-full-output-tu-order.c
    M clang/test/ClangScanDeps/modules-has-include-umbrella-header.c
    M clang/test/ClangScanDeps/modules-header-sharing.m
    M clang/test/ClangScanDeps/modules-implementation-module-map.c
    M clang/test/ClangScanDeps/modules-implementation-private.m
    M clang/test/ClangScanDeps/modules-priv-fw-from-pub.m
    A clang/test/ClangScanDeps/resolve-executable-path.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-build-pair-mma.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-pair-mma-types.c
    M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-errors.c
    M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-x64-error.c
    M clang/test/CodeGen/X86/avx10_2satcvtds-builtins-errors.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_add.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_add_sub_za16.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_clamp.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvtl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvtn.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_faminmax.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_fmlas16.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_fp_dots.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_frint.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_int_dots.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_max.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_maxnm.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_min.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_minnm.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mla.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlal.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlall.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mls.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlsl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_read.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sqdmulh.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sub.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vdot.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_add.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_qrshr.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_rshl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_write.c
    M clang/test/CodeGen/aarch64-sme2p1-intrinsics/acle_sme2p1_movaz.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_reinterpret-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_reinterpret.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef4.c
    M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_luti.c
    M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_tbl2-bfloat.c
    M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_tbl2.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_create2_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_create4_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_get2_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_get4_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_ld1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_ldnt1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_loads.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_pext.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_qcvtn.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_qrshr.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_set2_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_set4_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_st1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_stnt1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_store.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_undef_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_while_x2.c
    M clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_get_neonq.c
    M clang/test/CodeGen/attr-counted-by.c
    A clang/test/CodeGen/attr-target-clones-riscv-invalid.c
    A clang/test/CodeGen/attr-target-clones-riscv.c
    M clang/test/CodeGen/svboolx2_t.cpp
    M clang/test/CodeGen/svboolx4_t.cpp
    M clang/test/CodeGen/target-builtin-noerror.c
    M clang/test/CodeGenCXX/aarch64-mangle-sve-vectors.cpp
    M clang/test/CodeGenCXX/aarch64-sve-vector-init.cpp
    A clang/test/CodeGenCXX/attr-target-clones-riscv.cpp
    A clang/test/CodeGenHLSL/builtins/asuint.hlsl
    M clang/test/CodeGenHLSL/this-assignment.hlsl
    M clang/test/Driver/x86-march.c
    M clang/test/Frontend/x86-target-cpu.c
    M clang/test/Misc/target-invalid-cpu-note/x86.c
    M clang/test/Misc/warning-flags.c
    M clang/test/OpenMP/bug57757.cpp
    M clang/test/ParserHLSL/group_shared.hlsl
    M clang/test/ParserHLSL/group_shared_202x.hlsl
    M clang/test/ParserHLSL/invalid_inside_cb.hlsl
    M clang/test/Preprocessor/predefined-arch-macros.c
    M clang/test/Preprocessor/predefined-macros-hlsl.hlsl
    M clang/test/Sema/enum.c
    A clang/test/SemaCXX/attr-target-clones-riscv.cpp
    M clang/test/SemaCXX/constant-expression-cxx11.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-libc-functions.cpp
    A clang/test/SemaHLSL/BuiltIns/asuint-errors.hlsl
    M clang/test/SemaHLSL/group_shared.hlsl
    M clang/test/SemaHLSL/group_shared_202x.hlsl
    A clang/test/utils/update-verify-tests/Inputs/duplicate-diag.c
    A clang/test/utils/update-verify-tests/Inputs/duplicate-diag.c.expected
    A clang/test/utils/update-verify-tests/Inputs/infer-indentation.c
    A clang/test/utils/update-verify-tests/Inputs/infer-indentation.c.expected
    A clang/test/utils/update-verify-tests/Inputs/leave-existing-diags.c
    A clang/test/utils/update-verify-tests/Inputs/leave-existing-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/multiple-errors.c
    A clang/test/utils/update-verify-tests/Inputs/multiple-errors.c.expected
    A clang/test/utils/update-verify-tests/Inputs/multiple-missing-errors-same-line.c
    A clang/test/utils/update-verify-tests/Inputs/multiple-missing-errors-same-line.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-checks.c
    A clang/test/utils/update-verify-tests/Inputs/no-checks.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-diags.c
    A clang/test/utils/update-verify-tests/Inputs/no-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-expected-diags.c
    A clang/test/utils/update-verify-tests/Inputs/no-expected-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/non-default-prefix.c
    A clang/test/utils/update-verify-tests/Inputs/non-default-prefix.c.expected
    A clang/test/utils/update-verify-tests/Inputs/update-same-line.c
    A clang/test/utils/update-verify-tests/Inputs/update-same-line.c.expected
    A clang/test/utils/update-verify-tests/Inputs/update-single-check.c
    A clang/test/utils/update-verify-tests/Inputs/update-single-check.c.expected
    A clang/test/utils/update-verify-tests/duplicate-diag.test
    A clang/test/utils/update-verify-tests/infer-indentation.test
    A clang/test/utils/update-verify-tests/leave-existing-diags.test
    A clang/test/utils/update-verify-tests/lit.local.cfg
    A clang/test/utils/update-verify-tests/multiple-errors.test
    A clang/test/utils/update-verify-tests/multiple-missing-errors-same-line.test
    A clang/test/utils/update-verify-tests/no-checks.test
    A clang/test/utils/update-verify-tests/no-diags.test
    A clang/test/utils/update-verify-tests/no-expected-diags.test
    A clang/test/utils/update-verify-tests/non-default-prefix.test
    A clang/test/utils/update-verify-tests/update-same-line.test
    A clang/test/utils/update-verify-tests/update-single-check.test
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp
    M clang/utils/TableGen/ClangSACheckersEmitter.cpp
    M clang/utils/TableGen/ClangSyntaxEmitter.cpp
    M clang/utils/TableGen/ClangTypeNodesEmitter.cpp
    M clang/utils/TableGen/MveEmitter.cpp
    M clang/utils/TableGen/NeonEmitter.cpp
    M clang/utils/TableGen/RISCVVEmitter.cpp
    M clang/utils/TableGen/SveEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h
    A clang/utils/UpdateVerifyTests/core.py
    A clang/utils/update-verify-tests.py
    M clang/www/c_status.html
    M compiler-rt/lib/builtins/cpu_model/x86.c
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/test/Lower/OpenMP/atomic-read.f90
    M flang/test/Lower/OpenMP/atomic-update.f90
    M flang/test/Lower/OpenMP/parallel.f90
    A flang/test/Lower/OpenMP/shared-loop.f90
    M flang/test/Lower/OpenMP/wsloop-chunks.f90
    M flang/test/Lower/OpenMP/wsloop-monotonic.f90
    M flang/test/Lower/OpenMP/wsloop-nonmonotonic.f90
    M flang/test/Lower/OpenMP/wsloop-schedule.f90
    M flang/test/Lower/OpenMP/wsloop.f90
    M flang/test/Semantics/OpenMP/do20.f90
    M flang/test/Semantics/OpenMP/implicit-dsa.f90
    M flang/test/Semantics/OpenMP/symbol01.f90
    M flang/test/Semantics/OpenMP/symbol02.f90
    M flang/test/Semantics/OpenMP/symbol03.f90
    M flang/test/Semantics/OpenMP/symbol07.f90
    M flang/test/Semantics/OpenMP/symbol09.f90
    M libc/src/__support/OSUtil/linux/vdso.cpp
    M libc/src/__support/OSUtil/linux/vdso_sym.h
    M libc/src/__support/time/linux/CMakeLists.txt
    M libc/src/__support/time/linux/clock_gettime.h
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/docs/Status/Cxx20Papers.csv
    M libcxx/include/chrono
    M libcxx/include/experimental/__simd/vec_ext.h
    M libcxx/test/libcxx/diagnostics/chrono.nodiscard.verify.cpp
    M libcxx/test/std/time/time.zone/time.zone.timezone/time.zone.members/sys_info.zdump.pass.cpp
    M lld/COFF/Chunks.cpp
    M lld/COFF/Chunks.h
    M lld/COFF/InputFiles.cpp
    M lld/COFF/InputFiles.h
    M lld/COFF/MapFile.cpp
    M lld/COFF/MarkLive.cpp
    M lld/COFF/PDB.cpp
    M lld/COFF/Symbols.cpp
    M lld/COFF/Symbols.h
    M lld/COFF/Writer.cpp
    M lld/ELF/Arch/Hexagon.cpp
    M lld/test/COFF/arm64ec-import.test
    M lld/test/ELF/hexagon-eflag.s
    M lldb/docs/resources/sbapi.rst
    M lldb/examples/synthetic/gnu_libstdcpp.py
    M lldb/include/lldb/API/SBValue.h
    M lldb/include/lldb/Host/Socket.h
    M lldb/include/lldb/Host/common/TCPSocket.h
    M lldb/include/lldb/Host/common/UDPSocket.h
    M lldb/include/lldb/Host/posix/DomainSocket.h
    M lldb/source/API/SBValue.cpp
    M lldb/source/Core/Progress.cpp
    M lldb/source/Host/common/Socket.cpp
    M lldb/source/Host/common/TCPSocket.cpp
    M lldb/source/Host/common/UDPSocket.cpp
    M lldb/source/Host/posix/DomainSocket.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.h
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
    M lldb/source/Plugins/Process/FreeBSD/NativeProcessFreeBSD.cpp
    M lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/TestDataFormatterLibcxxStringSimulator.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/main.cpp
    M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py
    M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
    M lldb/test/API/tools/lldb-dap/stackTrace/subtleFrames/Makefile
    M lldb/unittests/Host/SocketTest.cpp
    M llvm/docs/RISCVUsage.rst
    M llvm/include/llvm/Analysis/BranchProbabilityInfo.h
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/SandboxIR/Pass.h
    M llvm/include/llvm/SandboxIR/PassManager.h
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/SandboxIRValues.def
    M llvm/include/llvm/Support/AMDGPUAddrSpace.h
    A llvm/include/llvm/Support/OptionStrCmp.h
    M llvm/include/llvm/TargetParser/X86TargetParser.def
    M llvm/include/llvm/TargetParser/X86TargetParser.h
    M llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
    A llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
    M llvm/lib/Analysis/IRSimilarityIdentifier.cpp
    M llvm/lib/CodeGen/EarlyIfConversion.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Option/OptTable.cpp
    M llvm/lib/Option/Option.cpp
    M llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp
    M llvm/lib/SandboxIR/PassManager.cpp
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/Support/CMakeLists.txt
    A llvm/lib/Support/OptionStrCmp.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonOptAddrMode.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp
    M llvm/lib/Target/RISCV/RISCVCallingConv.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
    M llvm/lib/Target/X86/X86.td
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86PfmCounters.td
    M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.h
    M llvm/lib/TargetParser/Host.cpp
    M llvm/lib/TargetParser/X86TargetParser.cpp
    M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
    M llvm/lib/Transforms/Coroutines/CoroInternal.h
    A llvm/lib/Transforms/Coroutines/CoroShape.h
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/lib/Transforms/Coroutines/Coroutines.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/lib/Transforms/Vectorize/CMakeLists.txt
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/CodeGen/AArch64/abs.ll
    M llvm/test/CodeGen/AArch64/expand-select.ll
    M llvm/test/CodeGen/AArch64/fcmp.ll
    M llvm/test/CodeGen/AArch64/icmp.ll
    M llvm/test/CodeGen/AArch64/shift.ll
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32-wave32.mir
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w32.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.prefetch.data.ll
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain.mir
    A llvm/test/CodeGen/AMDGPU/si-init-whole-wave.mir
    M llvm/test/CodeGen/ARM/big-endian-vmov.ll
    A llvm/test/CodeGen/Hexagon/autohvx/addi-offset-opt-addr-mode.ll
    A llvm/test/CodeGen/Hexagon/autohvx/addi-opt-predicated-def-bug.ll
    M llvm/test/CodeGen/Hexagon/vgather-opt-addr.ll
    M llvm/test/CodeGen/MIR/AMDGPU/long-branch-reg-all-sgpr-used.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-after-pei.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg-debug.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-no-ir.mir
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info.ll
    A llvm/test/CodeGen/MIR/Hexagon/addrmode-opt-nonreaching.mir
    M llvm/test/CodeGen/Thumb2/mve-vmovimm.ll
    M llvm/test/CodeGen/X86/bypass-slow-division-64.ll
    M llvm/test/CodeGen/X86/cmp16.ll
    M llvm/test/CodeGen/X86/cpus-amd.ll
    M llvm/test/CodeGen/X86/rdpru.ll
    M llvm/test/CodeGen/X86/shuffle-as-shifts.ll
    M llvm/test/CodeGen/X86/slow-unaligned-mem.ll
    M llvm/test/CodeGen/X86/sqrt-fastmath-tune.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-permilpd-avx512.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-permilps-avx512.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-unpckpd-avx512.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-unpckps-avx512.ll
    A llvm/test/CodeGen/X86/vector-compress.ll
    M llvm/test/CodeGen/X86/vector-shuffle-fast-per-lane.ll
    M llvm/test/CodeGen/X86/vpdpwssd.ll
    M llvm/test/CodeGen/X86/x86-64-double-shifts-var.ll
    A llvm/test/CodeGen/Xtensa/frameaddr-returnaddr.ll
    M llvm/test/MC/WebAssembly/basic-assembly.s
    A llvm/test/MC/WebAssembly/eh-assembly.s
    M llvm/test/MC/X86/x86_long_nop.s
    M llvm/test/Transforms/Coroutines/swift-async-dbg.ll
    M llvm/test/Transforms/InstCombine/getelementptr.ll
    A llvm/test/Transforms/InstCombine/phi-with-multiple-unsimplifiable-values.ll
    M llvm/test/Transforms/InstCombine/pow-1.ll
    M llvm/test/Transforms/LoopUnroll/X86/call-remark.ll
    A llvm/test/Transforms/SLPVectorizer/X86/phi-node-reshuffled-part.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr63668.ll
    A llvm/test/Transforms/SLPVectorizer/X86/reduced-val-extracted-and-externally-used.ll
    A llvm/test/Transforms/SandboxVectorizer/default_pass_pipeline.ll
    A llvm/test/Transforms/SandboxVectorizer/user_pass_pipeline.ll
    M llvm/test/Transforms/VectorCombine/AArch64/shrink-types.ll
    A llvm/test/Verifier/AMDGPU/intrinsic-prefetch.ll
    M llvm/test/tools/llvm-ml/rip_relative_addressing.asm
    M llvm/tools/dsymutil/MachODebugMapParser.cpp
    M llvm/tools/llvm-debuginfo-analyzer/llvm-debuginfo-analyzer.cpp
    M llvm/tools/llvm-dwarfdump/Statistics.cpp
    M llvm/tools/llvm-exegesis/lib/LlvmState.h
    M llvm/tools/llvm-libtool-darwin/llvm-libtool-darwin.cpp
    M llvm/tools/llvm-lipo/llvm-lipo.cpp
    M llvm/tools/llvm-readobj/ARMWinEHPrinter.cpp
    M llvm/tools/llvm-readobj/ELFDumper.cpp
    M llvm/tools/llvm-size/llvm-size.cpp
    M llvm/tools/llvm-xray/xray-graph.cpp
    M llvm/unittests/ADT/Interleave.cpp
    M llvm/unittests/ADT/RewriteBufferTest.cpp
    M llvm/unittests/Analysis/AssumeBundleQueriesTest.cpp
    M llvm/unittests/Analysis/CFGTest.cpp
    M llvm/unittests/Analysis/DXILResourceTest.cpp
    M llvm/unittests/Analysis/LazyCallGraphTest.cpp
    M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp
    M llvm/unittests/Analysis/ValueTrackingTest.cpp
    M llvm/unittests/Analysis/VectorUtilsTest.cpp
    M llvm/unittests/Bitcode/BitReaderTest.cpp
    M llvm/unittests/CodeGen/GlobalISel/GISelMITest.cpp
    M llvm/unittests/CodeGen/GlobalISel/LegalizerTest.cpp
    M llvm/unittests/CodeGen/MachineInstrTest.cpp
    M llvm/unittests/CodeGen/MachineOperandTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFDebugFrameTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFDebugLineTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFFormValueTest.cpp
    M llvm/unittests/DebugInfo/GSYM/GSYMTest.cpp
    M llvm/unittests/IR/AsmWriterTest.cpp
    M llvm/unittests/IR/ConstantsTest.cpp
    M llvm/unittests/IR/ManglerTest.cpp
    M llvm/unittests/IR/MetadataTest.cpp
    M llvm/unittests/IR/ModuleSummaryIndexTest.cpp
    M llvm/unittests/IR/ValueTest.cpp
    M llvm/unittests/IR/VerifierTest.cpp
    M llvm/unittests/InterfaceStub/ELFYAMLTest.cpp
    M llvm/unittests/MC/MCInstPrinter.cpp
    M llvm/unittests/MIR/MachineMetadata.cpp
    M llvm/unittests/Object/SymbolicFileTest.cpp
    M llvm/unittests/ProfileData/InstrProfTest.cpp
    M llvm/unittests/ProfileData/MemProfTest.cpp
    M llvm/unittests/SandboxIR/PassTest.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp
    M llvm/unittests/Support/ARMAttributeParser.cpp
    M llvm/unittests/Support/CSKYAttributeParserTest.cpp
    M llvm/unittests/Support/Chrono.cpp
    M llvm/unittests/Support/CommandLineTest.cpp
    M llvm/unittests/Support/CrashRecoveryTest.cpp
    M llvm/unittests/Support/ErrorTest.cpp
    M llvm/unittests/Support/FormatVariadicTest.cpp
    M llvm/unittests/Support/JSONTest.cpp
    M llvm/unittests/Support/LEB128Test.cpp
    M llvm/unittests/Support/ModRefTest.cpp
    M llvm/unittests/Support/NativeFormatTests.cpp
    M llvm/unittests/Support/RISCVAttributeParserTest.cpp
    M llvm/unittests/Support/ScopedPrinterTest.cpp
    M llvm/unittests/Support/SourceMgrTest.cpp
    M llvm/unittests/Support/VirtualFileSystemTest.cpp
    M llvm/unittests/Support/WithColorTest.cpp
    M llvm/unittests/Support/YAMLIOTest.cpp
    M llvm/unittests/Target/RISCV/RISCVInstrInfoTest.cpp
    M llvm/unittests/Transforms/Coroutines/ExtraRematTest.cpp
    M llvm/unittests/Transforms/Instrumentation/PGOInstrumentationTest.cpp
    M llvm/unittests/Transforms/Utils/MemTransferLowering.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
    M llvm/unittests/XRay/FDRProducerConsumerTest.cpp
    M llvm/unittests/XRay/FDRRecordPrinterTest.cpp
    M llvm/unittests/XRay/FDRRecordsTest.cpp
    M llvm/unittests/XRay/FDRTraceWriterTest.cpp
    M llvm/unittests/tools/llvm-exegesis/ProgressMeterTest.cpp
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp
    M llvm/utils/TableGen/Common/OptEmitter.cpp
    M llvm/utils/TableGen/Common/OptEmitter.h
    M llvm/utils/TableGen/OptParserEmitter.cpp
    M llvm/utils/TableGen/OptRSTEmitter.cpp
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Tooling/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOpBase.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.h
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.td
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp
    M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp
    M mlir/lib/Dialect/Tosa/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/Tosa/Transforms/TosaReduceTransposes.cpp
    M mlir/lib/Target/LLVMIR/Dialect/NVVM/LLVMIRToNVVMTranslation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
    M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
    M mlir/test/Dialect/Linalg/transform-tile-and-winograd-rewrite.mlir
    M mlir/test/Dialect/Linalg/winograd-conv2d-rewrite.mlir
    M mlir/test/Dialect/Linalg/winograd-conv2d.mlir
    A mlir/test/Dialect/Mesh/inlining.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir
    A mlir/test/Dialect/Tosa/tosa-reduce-transposes.mlir
    M mlir/test/Integration/Dialect/SparseTensor/python/test_SDDMM.py
    M mlir/test/Integration/Dialect/SparseTensor/python/test_SpMM.py
    A mlir/test/Integration/Dialect/SparseTensor/python/test_all_dense.py
    M mlir/test/Integration/Dialect/SparseTensor/python/test_output.py
    M mlir/test/Integration/Dialect/SparseTensor/python/test_stress.py
    M mlir/test/Integration/Dialect/SparseTensor/python/tools/sparsifier.py
    M mlir/test/Target/LLVMIR/Import/nvvmir.ll
    M mlir/test/Target/LLVMIR/nvvmir.mlir
    M mlir/test/mlir-tblgen/openmp-clause-ops.td
    M mlir/test/mlir-tblgen/openmp-ops-verify.td
    M mlir/test/mlir-tblgen/openmp-ops.td
    M mlir/tools/mlir-tblgen/OmpOpGen.cpp
    M offload/DeviceRTL/CMakeLists.txt
    M offload/DeviceRTL/include/DeviceTypes.h
    M offload/include/Shared/Environment.h
    R offload/include/Shared/Types.h
    M offload/include/Shared/Utils.h
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
    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/4b35a0dfc5e0...bfeba7fce46e

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