[all-commits] [llvm/llvm-project] cd8229: [flang][cuda] Support c_devptr in c_f_pointer intr...

Alexey Bataev via All-commits all-commits at lists.llvm.org
Tue Sep 10 04:30:15 PDT 2024


  Branch: refs/heads/users/alexey-bataev/spr/slpvectorize-of-gathered-loads
  Home:   https://github.com/llvm/llvm-project
  Commit: cd8229bb4bfa4de45528ce101d9dceb9be8bff9e
      https://github.com/llvm/llvm-project/commit/cd8229bb4bfa4de45528ce101d9dceb9be8bff9e
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/FIRType.h
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/test/Lower/CUDA/cuda-devptr.cuf

  Log Message:
  -----------
  [flang][cuda] Support c_devptr in c_f_pointer intrinsic (#107470)

This is an extension of CUDA Fortran. The iso_c_binding intrinsic can
accept a `TYPE(c_devptr)` as its first argument. This patch relax the
semantic check to accept it and update the lowering to unwrap the cptr
field from the c_devptr.


  Commit: 6cc0138ca3dbdb21f4c4a5fa39cf05c38da4bb75
      https://github.com/llvm/llvm-project/commit/6cc0138ca3dbdb21f4c4a5fa39cf05c38da4bb75
  Author: Chris B <chris.bieneman at me.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M clang/include/clang/Sema/Overload.h
    M clang/test/SemaHLSL/TruncationOverloadResolution.hlsl

  Log Message:
  -----------
  Fix implicit conversion rank ordering (#106811)

DXC prefers dimension-preserving conversions over precision-losing
conversions. This means a double4 -> float4 conversion is preferred over
a double4 -> double3 or double4 -> double conversion.


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

  Changed paths:
    M llvm/lib/Target/ARM/MCTargetDesc/ARMBaseInfo.h

  Log Message:
  -----------
  [ARM] Fix a warning

This patch fixes:

  llvm/lib/Target/ARM/MCTargetDesc/ARMBaseInfo.h:214:5: error: default
  label in switch which covers all enumeration values
  [-Werror,-Wcovered-switch-default]


  Commit: 0f349b7a9cde0080e626f6cfd362885341eb63b4
      https://github.com/llvm/llvm-project/commit/0f349b7a9cde0080e626f6cfd362885341eb63b4
  Author: Sarah Spall <spall at users.noreply.github.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaHLSL.cpp
    A clang/test/CodeGenHLSL/builtins/select.hlsl
    A clang/test/SemaHLSL/BuiltIns/select-errors.hlsl

  Log Message:
  -----------
  [HLSL] Implement support for HLSL intrinsic - select (#107129)

Implement support for HLSL intrinsic select.
This would close issue #75377


  Commit: 5f74671c85877e03622e8d308aee15ed73ccee7c
      https://github.com/llvm/llvm-project/commit/5f74671c85877e03622e8d308aee15ed73ccee7c
  Author: Tarun Prabhu <tarun at lanl.gov>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    A flang/test/Driver/xlinker.f90

  Log Message:
  -----------
  [flang][Driver] Support -Xlinker in flang (#107472)

Partially addresses: https://github.com/llvm/llvm-project/issues/89888


  Commit: 6850410562123b6e4fbb039e7ba4a2325b994b84
      https://github.com/llvm/llvm-project/commit/6850410562123b6e4fbb039e7ba4a2325b994b84
  Author: Zequan Wu <zequanwu at google.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    A compiler-rt/test/profile/instrprof-merging-2.cpp
    M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp

  Log Message:
  -----------
  [Coverage] Ignore unused functions if the count is 0. (#107661)

Relax the condition to ignore the case when count is 0. 

This fixes a bug on
https://github.com/llvm/llvm-project/commit/381e9d2386facea7f2acc0f8c16a6d0731267f80.
This was reported at
https://discourse.llvm.org/t/coverage-from-multiple-test-executables/81024/.


  Commit: 4a501a4556bb191bd6eb5398a7330a28437e5087
      https://github.com/llvm/llvm-project/commit/4a501a4556bb191bd6eb5398a7330a28437e5087
  Author: Artem Belevich <tra at google.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M clang/lib/Driver/Driver.cpp
    M clang/test/Driver/hip-cuid.hip

  Log Message:
  -----------
  [CUDA/HIP] propagate -cuid to a host-only compilation. (#107483)

Right now we're bailing out too early, and `-cuid` does not get set for
the host-only compilations.


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

  Changed paths:
    M libc/test/src/math/exp2f_test.cpp
    M libc/test/src/math/smoke/exp2f_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/math/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/math/libc_math_test_rules.bzl
    M utils/bazel/llvm-project-overlay/libc/test/src/math/smoke/BUILD.bazel

  Log Message:
  -----------
  [libc][bazel] Update bazel overlay for math functions and their tests. (#107862)


  Commit: 09b231cb38755e1bd122dbab9c57c4847bf64204
      https://github.com/llvm/llvm-project/commit/09b231cb38755e1bd122dbab9c57c4847bf64204
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M lld/ELF/InputFiles.cpp
    M lld/ELF/LTO.cpp
    M llvm/include/llvm/LTO/Config.h
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/Object/IRSymtab.h
    M llvm/lib/LTO/LTO.cpp

  Log Message:
  -----------
  Re-apply "[NFCI][LTO][lld] Optimize away symbol copies within LTO global resolution in ELF" (#107792)

Fix the use-after-free bug and re-apply
https://github.com/llvm/llvm-project/pull/106193
* Without the fix, the string referenced by `objSym.Name` could be
destroyed even if string saver keeps a copy of the referenced string.
This caused use-after-free.
* The fix ([latest
commit](https://github.com/llvm/llvm-project/pull/107792/commits/9776ed44cfb26172480145aed8f59ba78a6fa2ea))
updates `objSym.Name` to reference (via `StringRef`) the string saver's
copy.

Test:
1. For `lld/test/ELF/lto/asmundef.ll`, its test failure is reproducible
with `-DLLVM_USE_SANITIZER=Address` and gone with the fix.
3. Run all tests by following
https://github.com/google/sanitizers/wiki/SanitizerBotReproduceBuild#try-local-changes.
* Without the fix, `ELF/lto/asmundef.ll` aborted the multi-stage test at
`@@@BUILD_STEP stage2/asan_ubsan check@@@`, defined
[here](https://github.com/llvm/llvm-zorg/blob/main/zorg/buildbot/builders/sanitizers/buildbot_fast.sh#L30)
* With the fix, the [multi-stage
test](https://github.com/llvm/llvm-zorg/blob/main/zorg/buildbot/builders/sanitizers/buildbot_fast.sh)
pass stage2 {asan, ubsan, masan}. This is also the test used by
https://lab.llvm.org/buildbot/#/builders/169


**Original commit message**

`StringMap<T>` creates a [copy of the
string](https://github.com/llvm/llvm-project/blob/d4c519e7b2ac21350ec08b23eda44bf4a2d3c974/llvm/include/llvm/ADT/StringMapEntry.h#L55-L58)
for entry insertions and intentionally keep copies [since the
implementation optimizes string memory
usage](https://github.com/llvm/llvm-project/blob/d4c519e7b2ac21350ec08b23eda44bf4a2d3c974/llvm/include/llvm/ADT/StringMap.h#L124).
On the other hand, linker keeps copies of symbol names [1] in
`lld::elf::parseFiles` [2] before invoking `compileBitcodeFiles` [3].

This change proposes to optimize away string copies inside
[LTO::GlobalResolutions](https://github.com/llvm/llvm-project/blob/24e791b4164986a1ca7776e3ae0292ef20d20c47/llvm/include/llvm/LTO/LTO.h#L409),
which will make LTO indexing more memory efficient for ELF. There are
similar opportunities for other (COFF, wasm, MachO) formats.

The optimization takes place for lld (ELF) only. For the rest of use
cases (gold plugin, `llvm-lto2`, etc), LTO owns a string saver to keep
copies and use global resolution key for de-duplication.

Together with @kazutakahirata's work to make `ComputeCrossModuleImport`
more memory efficient, we see a ~20% peak memory usage reduction in a
binary where peak memory usage needs to go down. Thanks to the
optimization in
https://github.com/llvm/llvm-project/commit/329ba523ccbbe68a12434926c92fd9a86494d958,
the max (as opposed to the sum) of `ComputeCrossModuleImport` or
`GlobalResolution` shows up in peak memory usage.
* Regarding correctness, the set of
[resolved](https://github.com/llvm/llvm-project/blob/80c47ad3aec9d7f22e1b1bdc88960a91b66f89f1/llvm/lib/LTO/LTO.cpp#L739)
[per-module
symbols](https://github.com/llvm/llvm-project/blob/80c47ad3aec9d7f22e1b1bdc88960a91b66f89f1/llvm/include/llvm/LTO/LTO.h#L188-L191)
is a subset of
[llvm::lto::InputFile::Symbols](https://github.com/llvm/llvm-project/blob/80c47ad3aec9d7f22e1b1bdc88960a91b66f89f1/llvm/include/llvm/LTO/LTO.h#L120).
And bitcode symbol parsing saves symbol name when iterating
`obj->symbols` in `BitcodeFile::parse` already. This change updates
`BitcodeFile::parseLazy` to keep copies of per-module undefined symbols.
* Presumably the undefined symbols in a LTO unit (copied in this patch
in linker unique saver) is a small set compared with the set of symbols
in global-resolution (copied before this patch), making this a
worthwhile trade-off. Benchmarking this change alone shows measurable
memory savings across various benchmarks.

[1] ELF
https://github.com/llvm/llvm-project/blob/1cea5c2138bef3d8fec75508df6dbb858e6e3560/lld/ELF/InputFiles.cpp#L1748
[2]
https://github.com/llvm/llvm-project/blob/ef7b18a53c0d186dcda1e322be6035407fdedb55/lld/ELF/Driver.cpp#L2863
[3]
https://github.com/llvm/llvm-project/blob/ef7b18a53c0d186dcda1e322be6035407fdedb55/lld/ELF/Driver.cpp#L2995


  Commit: b1b9b7b853fc4301aedd9ad6b7c22b75f5546b94
      https://github.com/llvm/llvm-project/commit/b1b9b7b853fc4301aedd9ad6b7c22b75f5546b94
  Author: Eduard Satdarov <sath at yandex-team.ru>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M libcxx/include/__filesystem/directory_entry.h
    M libcxx/src/filesystem/directory_iterator.cpp
    M libcxx/src/filesystem/file_descriptor.h
    A libcxx/test/std/input.output/filesystems/class.rec.dir.itr/cache_refresh_iter.pass.cpp

  Log Message:
  -----------
  [libc++] Cache file attributes during directory iteration (#93316)

This patch adds caching of file attributes during directory iteration
on Windows. This improves the performance when working with files being
iterated on in a directory.


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

  Changed paths:
    M clang/lib/Headers/hexagon_types.h

  Log Message:
  -----------
  [clang, hexagon] Update copyright, license text (#107161)

When this file was first contributed - `28b01c59c93d ([hexagon] Add
{hvx,}hexagon_{protos,circ_brev...}, 2021-06-30)` - I incorrectly
included a QuIC copyright statement with "All rights reserved". I should
have contributed this file with the `Apache+LLVM exception` license.


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

  Changed paths:
    M llvm/utils/mlgo-utils/mlgo/corpus/extract_ir.py
    M llvm/utils/mlgo-utils/tests/corpus/extract_ir_test.py

  Log Message:
  -----------
  [MLGO] Remove unused imports

Remove unused imports from python files in the MLGO library.


  Commit: a7c26aaf2eca61cd5d885194872471c63d68f3bc
      https://github.com/llvm/llvm-project/commit/a7c26aaf2eca61cd5d885194872471c63d68f3bc
  Author: Zequan Wu <zequanwu at google.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    R compiler-rt/test/profile/instrprof-merging-2.cpp
    M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp

  Log Message:
  -----------
  Revert "[Coverage] Ignore unused functions if the count is 0." (#107901)

Reverts llvm/llvm-project#107661

Breaks llvm-project/llvm/unittests/ProfileData/CoverageMappingTest.cpp


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

  Changed paths:
    M llvm/utils/mlgo-utils/mlgo/corpus/combine_training_corpus.py
    M llvm/utils/mlgo-utils/mlgo/corpus/extract_ir.py

  Log Message:
  -----------
  [MLGO] Fix logging verbosity in scripts (#107818)

This patch fixes issues related to logging verbosity in the MLGO python
scripts. This was an oversight when converting from absl.logging to the
python logging API as absl natively supports a --verbosity flag to set
the desired logging level. This patch adds a flag to support similar
functionality in Python's logging library and additionally updates
docstrings where relevant to point to the new values.


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

  Changed paths:
    M llvm/include/llvm/TableGen/DirectiveEmitter.h
    M llvm/utils/TableGen/DirectiveEmitter.cpp

  Log Message:
  -----------
  [NFC][TableGen] DirectiveEmitter code cleanup (#107775)

Eliminate unnecessary llvm:: prefix as this code is in llvm namespace. 
Use ArrayRef<> instead of std::vector references when appropriate. 
Use .empty() instead of .size() == 0.


  Commit: eec1ee8ef10820c61c03b00b68d242d8c87d478a
      https://github.com/llvm/llvm-project/commit/eec1ee8ef10820c61c03b00b68d242d8c87d478a
  Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M llvm/lib/Support/raw_ostream.cpp
    M llvm/utils/lit/lit/run.py
    M llvm/utils/lit/lit/util.py

  Log Message:
  -----------
  [SystemZ][z/OS] Enable lit testing for z/OS (#107631)

This patch fixes various errors to enable llvm-lit to run on z/OS


  Commit: 6776d65ceaea84fe815845da3c41b2f1621521fb
      https://github.com/llvm/llvm-project/commit/6776d65ceaea84fe815845da3c41b2f1621521fb
  Author: NoumanAmir-10xe <66777536+NoumanAmir657 at users.noreply.github.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx2cIssues.csv
    M libcxx/include/__iterator/common_iterator.h
    M libcxx/include/__iterator/counted_iterator.h

  Log Message:
  -----------
  [libc++] Implement LWG3953 (#107535)

Closes #105303


  Commit: ab82f83dae065a9aa4716618524eddf4aad5fcf0
      https://github.com/llvm/llvm-project/commit/ab82f83dae065a9aa4716618524eddf4aad5fcf0
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M llvm/include/llvm/LTO/LTO.h

  Log Message:
  -----------
  [LTO][NFC] Fix forward declaration (#107902)

Fix after https://github.com/llvm/llvm-project/pull/107792


  Commit: 3681d8552fb9e6cb15e9d45849ff2e34a25c518e
      https://github.com/llvm/llvm-project/commit/3681d8552fb9e6cb15e9d45849ff2e34a25c518e
  Author: Nikita Popov <nikita.ppv at gmail.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/test/CXX/temp/temp.res/temp.dep/temp.dep.type/p4.cpp

  Log Message:
  -----------
  Revert "[Clang][Sema] Use the correct lookup context when building overloaded 'operator->' in the current instantiation (#104458)"

This reverts commit 3cdb30ebbc18fa894d3bd67aebcff76ce7c741ac.

Breaks clang bootstrap.


  Commit: 98815f7878c3240e27f516e331255532087f5fcb
      https://github.com/llvm/llvm-project/commit/98815f7878c3240e27f516e331255532087f5fcb
  Author: c8ef <c8ef at outlook.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M clang/docs/ExternalClangExamples.rst

  Log Message:
  -----------
  [clang][docs] Add clang-tutor to External Clang Examples (#107665)


  Commit: e62bf7cd0beb530bc0842bb7aa8ff162607a82b9
      https://github.com/llvm/llvm-project/commit/e62bf7cd0beb530bc0842bb7aa8ff162607a82b9
  Author: Sean Perry <perry at ca.ibm.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M clang/lib/Basic/Targets/SystemZ.h
    M clang/lib/Driver/ToolChains/Arch/SystemZ.cpp
    M clang/lib/Driver/ToolChains/Arch/SystemZ.h
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/test/Preprocessor/predefined-arch-macros.c

  Log Message:
  -----------
  [z/OS] Set the default arch for z/OS to be arch10 (#89854)

The default arch level on z/OS is arch10. Update the code so z/OS has
arch10 without changing the default for zLinux.


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

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

  Log Message:
  -----------
  [SLP][NFC]Reorder code for better structural complexity, NFC


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

  Changed paths:
    M llvm/utils/TableGen/CodeEmitterGen.cpp
    M llvm/utils/TableGen/Common/CodeGenHwModes.cpp
    M llvm/utils/TableGen/Common/CodeGenHwModes.h
    M llvm/utils/TableGen/Common/InfoByHwMode.cpp
    M llvm/utils/TableGen/Common/InfoByHwMode.h
    M llvm/utils/TableGen/Common/VarLenCodeEmitterGen.cpp

  Log Message:
  -----------
  [TableGen] Migrate CodeGenHWModes to use const RecordKeeper (#107851)

Migrate CodeGenHWModes to use const RecordKeeper and const Record
pointers.

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: 3f22756f391e20040fa3581206b77c409433bd9f
      https://github.com/llvm/llvm-project/commit/3f22756f391e20040fa3581206b77c409433bd9f
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M llvm/docs/DirectX/DXILResources.rst
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
    M llvm/lib/Target/DirectX/DXILOpBuilder.h
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    A llvm/test/CodeGen/DirectX/BufferLoad.ll
    M llvm/utils/TableGen/DXILEmitter.cpp

  Log Message:
  -----------
  [DirectX] Lower `@llvm.dx.typedBufferLoad` to DXIL ops

The `@llvm.dx.typedBufferLoad` intrinsic is lowered to `@dx.op.bufferLoad`.
There's some complexity here in translating to scalarized IR, which I've
abstracted out into a function that should be useful for samples, gathers, and
CBuffer loads.

I've also updated the DXILResources.rst docs to match what I'm doing here and
the proposal in llvm/wg-hlsl#59. I've removed the content about stores and raw
buffers for now with the expectation that it will be added along with the work.

Note that this change includes a bit of a hack in how it deals with
`getOverloadKind` for the `dx.ResRet` types - we need to adjust how we deal
with operation overloads to generate a table directly rather than proxy through
the OverloadKind enum, but that's left for a later change here.

Part of #91367

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


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

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/vplan-printing.ll

  Log Message:
  -----------
  [VPlan] Consistently use VTC for vector trip count in vplan-printing.ll.

The inconsistency surfaced in
https://github.com/llvm/llvm-project/pull/95305. Split off the reduce
the diff.


  Commit: 53a81d4d26f0409de8a0655d7af90f2bea222a12
      https://github.com/llvm/llvm-project/commit/53a81d4d26f0409de8a0655d7af90f2bea222a12
  Author: Charlie Barto <chbarto at microsoft.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChains/MSVC.cpp
    M clang/test/Driver/cl-link.c
    M compiler-rt/CMakeLists.txt
    M compiler-rt/lib/asan/CMakeLists.txt
    M compiler-rt/lib/asan/asan_flags.cpp
    M compiler-rt/lib/asan/asan_globals_win.cpp
    M compiler-rt/lib/asan/asan_malloc_win.cpp
    A compiler-rt/lib/asan/asan_malloc_win_thunk.cpp
    A compiler-rt/lib/asan/asan_win_common_runtime_thunk.cpp
    A compiler-rt/lib/asan/asan_win_common_runtime_thunk.h
    R compiler-rt/lib/asan/asan_win_dll_thunk.cpp
    M compiler-rt/lib/asan/asan_win_dynamic_runtime_thunk.cpp
    A compiler-rt/lib/asan/asan_win_static_runtime_thunk.cpp
    R compiler-rt/lib/asan/asan_win_weak_interception.cpp
    M compiler-rt/lib/asan/tests/CMakeLists.txt
    M compiler-rt/lib/interception/CMakeLists.txt
    M compiler-rt/lib/profile/CMakeLists.txt
    M compiler-rt/lib/sanitizer_common/CMakeLists.txt
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interface.inc
    R compiler-rt/lib/sanitizer_common/sanitizer_coverage_win_dll_thunk.cpp
    R compiler-rt/lib/sanitizer_common/sanitizer_coverage_win_dynamic_runtime_thunk.cpp
    A compiler-rt/lib/sanitizer_common/sanitizer_coverage_win_runtime_thunk.cpp
    R compiler-rt/lib/sanitizer_common/sanitizer_coverage_win_weak_interception.cpp
    R compiler-rt/lib/sanitizer_common/sanitizer_win_dll_thunk.cpp
    R compiler-rt/lib/sanitizer_common/sanitizer_win_dll_thunk.h
    R compiler-rt/lib/sanitizer_common/sanitizer_win_dynamic_runtime_thunk.cpp
    A compiler-rt/lib/sanitizer_common/sanitizer_win_immortalize.h
    A compiler-rt/lib/sanitizer_common/sanitizer_win_interception.cpp
    A compiler-rt/lib/sanitizer_common/sanitizer_win_interception.h
    A compiler-rt/lib/sanitizer_common/sanitizer_win_thunk_interception.cpp
    A compiler-rt/lib/sanitizer_common/sanitizer_win_thunk_interception.h
    R compiler-rt/lib/sanitizer_common/sanitizer_win_weak_interception.cpp
    R compiler-rt/lib/sanitizer_common/sanitizer_win_weak_interception.h
    M compiler-rt/lib/ubsan/CMakeLists.txt
    R compiler-rt/lib/ubsan/ubsan_win_dll_thunk.cpp
    R compiler-rt/lib/ubsan/ubsan_win_dynamic_runtime_thunk.cpp
    A compiler-rt/lib/ubsan/ubsan_win_runtime_thunk.cpp
    R compiler-rt/lib/ubsan/ubsan_win_weak_interception.cpp
    M compiler-rt/test/asan/TestCases/Darwin/interface_symbols_darwin.cpp
    M compiler-rt/test/asan/TestCases/Linux/interface_symbols_linux.cpp
    M compiler-rt/test/asan/TestCases/Windows/double_free.cpp
    M compiler-rt/test/asan/TestCases/Windows/free_hook_realloc.cpp
    M compiler-rt/test/asan/TestCases/Windows/malloc_left_oob.cpp
    M compiler-rt/test/asan/TestCases/Windows/malloc_right_oob.cpp
    M compiler-rt/test/asan/TestCases/Windows/malloc_uaf.cpp
    M compiler-rt/test/asan/TestCases/Windows/msvc/dll_and_lib.cpp
    M compiler-rt/test/asan/TestCases/Windows/msvc/dll_large_function.cpp
    M compiler-rt/test/asan/TestCases/Windows/realloc_left_oob.cpp
    M compiler-rt/test/asan/TestCases/Windows/realloc_right_oob.cpp
    M compiler-rt/test/asan/TestCases/Windows/realloc_uaf.cpp
    M compiler-rt/test/asan/TestCases/Windows/symbols_path.cpp
    M compiler-rt/test/asan/TestCases/Windows/unsymbolized.cpp
    M compiler-rt/test/asan/TestCases/Windows/use_after_realloc.cpp
    M compiler-rt/test/asan/TestCases/debug_double_free.cpp
    M compiler-rt/test/asan/TestCases/debug_report.cpp
    M compiler-rt/test/asan/TestCases/default_options.cpp
    M compiler-rt/test/asan/TestCases/on_error_callback.cpp
    M compiler-rt/test/asan/TestCases/report_error_summary.cpp
    M compiler-rt/test/asan/lit.cfg.py

  Log Message:
  -----------
  Reland [asan][windows] Eliminate the static asan runtime on windows (#107899)

This reapplies 8fa66c6ca7272268747835a0e86805307b62399c ([asan][windows]
Eliminate the static asan runtime on windows) for a second time.

That PR bounced off the tests because it caused failures in the other
sanitizer runtimes, these have been fixed by only building interception,
sanitizer_common, and asan with /MD, and continuing to build the rest of
the runtimes with /MT. This does mean that any usage of the static
ubsan/fuzzer/etc runtimes will mean you're mixing different runtime
library linkages in the same app, the interception, sanitizer_common,
and asan runtimes are designed for this, however it does result in some
linker warnings.

Additionally, it turns out when building in release-mode with
LLVM_ENABLE_PDBs the build system forced /OPT:ICF. This totally breaks
asan's "new" method of doing "weak" functions on windows, and so
/OPT:NOICF was explicitly added to asan's link flags.

---------

Co-authored-by: Amy Wishnousky <amyw at microsoft.com>


  Commit: 6f8d2781f604cfcf9ea6facecc0bea8e4d682e1e
      https://github.com/llvm/llvm-project/commit/6f8d2781f604cfcf9ea6facecc0bea8e4d682e1e
  Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

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

  Log Message:
  -----------
  [SandboxIR] Add missing VectorType functions (#107650)

Fills in many missing functions from VectorType


  Commit: d9a996020394a8181d17e4f0a0fc89d59371f9af
      https://github.com/llvm/llvm-project/commit/d9a996020394a8181d17e4f0a0fc89d59371f9af
  Author: ChiaHungDuan <chiahungduan at google.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/primary32.h
    M compiler-rt/lib/scudo/standalone/primary64.h
    M compiler-rt/lib/scudo/standalone/release.h
    M compiler-rt/lib/scudo/standalone/tests/primary_test.cpp

  Log Message:
  -----------
  [scudo] Add fragmentation info for each memory group (#107475)

This information helps with tuning the heuristic of selecting memory
groups to release the unused pages.


  Commit: 66e9078f827383f77c1c239f6c09f2b07a963649
      https://github.com/llvm/llvm-project/commit/66e9078f827383f77c1c239f6c09f2b07a963649
  Author: Steven Wu <stevenwu at apple.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M llvm/tools/lto/lto.cpp

  Log Message:
  -----------
  [LTO] Fix a use-after-free in legacy LTO C APIs (#107896)

Fix a bug that `lto_runtime_lib_symbols_list` is returning the address
of a local variable that will be freed when getting out of scope. This
is a regression from #98512 that rewrites the runtime libcall function
lists into a SmallVector.

rdar://135559037


  Commit: a9a5a18a0e99b0251c0fe6ce61c5e699bf6b379b
      https://github.com/llvm/llvm-project/commit/a9a5a18a0e99b0251c0fe6ce61c5e699bf6b379b
  Author: Tim Gymnich <tgymnich at icloud.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/sign.ll

  Log Message:
  -----------
  [SPIRV] Add sign intrinsic part 1 (#101987)

partially fixes #70078

### Changes
- Added `int_spv_sign` intrinsic in `IntrinsicsSPIRV.td`
- Added lowering and map to `int_spv_sign in
`SPIRVInstructionSelector.cpp`
- Added SPIR-V backend test case in
`llvm/test/CodeGen/SPIRV/hlsl-intrinsics/sign.ll`

### Related PRs
- https://github.com/llvm/llvm-project/pull/101988
- https://github.com/llvm/llvm-project/pull/101989


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

  Changed paths:
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
    M llvm/utils/TableGen/Common/CodeGenInstAlias.cpp
    M llvm/utils/TableGen/Common/CodeGenInstAlias.h
    M llvm/utils/TableGen/Common/CodeGenInstruction.cpp
    M llvm/utils/TableGen/Common/CodeGenInstruction.h
    M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
    M llvm/utils/TableGen/Common/CodeGenRegisters.h
    M llvm/utils/TableGen/Common/CodeGenTarget.cpp
    M llvm/utils/TableGen/Common/CodeGenTarget.h
    M llvm/utils/TableGen/CompressInstEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherGen.cpp
    M llvm/utils/TableGen/DecoderEmitter.cpp
    M llvm/utils/TableGen/FastISelEmitter.cpp
    M llvm/utils/TableGen/GlobalISelEmitter.cpp
    M llvm/utils/TableGen/InstrInfoEmitter.cpp
    M llvm/utils/TableGen/X86FoldTablesEmitter.cpp
    M llvm/utils/TableGen/X86InstrMappingEmitter.cpp

  Log Message:
  -----------
  [TableGen] Change CGIOperandList::OperandInfo::Rec to const pointer (#107858)

Change CGIOperandList::OperandInfo::Rec and CGIOperandList::TheDef to
const pointer.

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: f12e10b513686a12f20f0c897dcc9ffc00cbce09
      https://github.com/llvm/llvm-project/commit/f12e10b513686a12f20f0c897dcc9ffc00cbce09
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    A llvm/include/llvm/SandboxIR/Pass.h
    M llvm/lib/SandboxIR/CMakeLists.txt
    A llvm/lib/SandboxIR/Pass.cpp
    M llvm/unittests/SandboxIR/CMakeLists.txt
    A llvm/unittests/SandboxIR/PassTest.cpp

  Log Message:
  -----------
  [SandboxVec] Implement Pass class (#107617)

This patch implements the Pass base class and the FunctionPass sub-class
that operate on Sandbox IR.


  Commit: 26b786ae2f15bfbf6f0925856a788ae0bfb2f8c1
      https://github.com/llvm/llvm-project/commit/26b786ae2f15bfbf6f0925856a788ae0bfb2f8c1
  Author: Artem Belevich <tra at google.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/test/CodeGen/NVPTX/LoadStoreVectorizer.ll

  Log Message:
  -----------
  [NVPTX] Restrict combining to properly aligned v16i8 vectors. (#107919)

Fixes generation of invalid loads leading to misaligned access errors.
The bug got exposed by SLP vectorizer change ec360d6 which allowed SLP
to produce `v16i8` vectors.

Also updated the tests to use automatic check generator.


  Commit: d148a1a40461ed27863f4b17ac2bd5914499f413
      https://github.com/llvm/llvm-project/commit/d148a1a40461ed27863f4b17ac2bd5914499f413
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/pull-conditional-binop-through-shift.ll

  Log Message:
  -----------
  [X86] Add tests support shifts + and in `LowerSELECTWithCmpZero`; NFC


  Commit: 88bd507dc2dd9c235b54d718cf84e4ef80d94bc9
      https://github.com/llvm/llvm-project/commit/88bd507dc2dd9c235b54d718cf84e4ef80d94bc9
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/pull-conditional-binop-through-shift.ll

  Log Message:
  -----------
  [X86] Handle shifts + and in `LowerSELECTWithCmpZero`

shifts are the same as sub where rhs == 0 is identity.
and is the inverted case where:
    `SELECT (AND(X,1) == 0), (AND Y, Z), Y`
        -> `(AND Y, (OR NEG(AND(X, 1)), Z))`
With -1 as the identity.

Closes #107910


  Commit: 33c1325a73c4bf6bacdb865c2550038afe4377d2
      https://github.com/llvm/llvm-project/commit/33c1325a73c4bf6bacdb865c2550038afe4377d2
  Author: Anton Korobeynikov <anton at korobeynikov.info>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M libcxx/src/include/overridable_function.h

  Log Message:
  -----------
  [PAC] Make __is_function_overridden pauth-aware on ELF platforms (#107498)

Apparently, there are two almost identical implementations: one for
MachO and another one for ELF. The ELF bits somehow slipped while
https://github.com/llvm/llvm-project/pull/84573 was reviewed.

The particular implementation is identical to MachO case.


  Commit: ae02211eaef305f957b419e5c39499aa472b956e
      https://github.com/llvm/llvm-project/commit/ae02211eaef305f957b419e5c39499aa472b956e
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-09 (Mon, 09 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 UndefValue (#107628)

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


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

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_tls_get_addr.cpp

  Log Message:
  -----------
  [NFC][sanitizer] Extract GetDTLSRange (#107934)


  Commit: b0d2411b53a0b55baf6d6dc7986d285ce59807fa
      https://github.com/llvm/llvm-project/commit/b0d2411b53a0b55baf6d6dc7986d285ce59807fa
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    A llvm/test/CodeGen/NVPTX/copysign.ll
    M llvm/test/CodeGen/NVPTX/math-intrins.ll

  Log Message:
  -----------
  [NVPTX] Support copysign PTX instruction (#107800)

Lower `fcopysign` SDNodes into `copysign` PTX instructions where
possible. See [PTX ISA: 9.7.3.2. Floating Point Instructions: copysign]
(https://docs.nvidia.com/cuda/parallel-thread-execution/index.html#floating-point-instructions-copysign).


  Commit: 3b2261809471a018de50e745c0d475b048c66fd4
      https://github.com/llvm/llvm-project/commit/3b2261809471a018de50e745c0d475b048c66fd4
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Transforms/IPO/ModuleInliner.cpp
    M llvm/test/Analysis/CtxProfAnalysis/inline.ll
    M llvm/test/Other/opt-hot-cold-split.ll
    M llvm/test/ThinLTO/X86/ctxprof.ll

  Log Message:
  -----------
  [ctx_prof] Insert the ctx prof flattener after the module inliner (#107499)

This patch enables experimenting with the contextual profile. ICP is currently disabled in this case - will reenable it subsequently. Also subsequently the inline cost model / decision making would be updated to be context-aware. Right now, this just achieves "complete use" of the profile, in that it's ingested, maintained, and sunk to a flat profile when not needed anymore.

Issue [#89287](https://github.com/llvm/llvm-project/issues/89287)


  Commit: f3b4e47b34e59625e2c8420ce8bf789373177d6d
      https://github.com/llvm/llvm-project/commit/f3b4e47b34e59625e2c8420ce8bf789373177d6d
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp

  Log Message:
  -----------
  [mlir][linalg][NFC] Drop redundant rankReductionStrategy (#107875)

This patch drop redundant rankReductionStrategy in
`populateFoldUnitExtentDimsViaSlicesPatterns` and fixes comment typos.


  Commit: a111f9119a5ec77c19a514ec09454218f739454f
      https://github.com/llvm/llvm-project/commit/a111f9119a5ec77c19a514ec09454218f739454f
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
    M llvm/test/CodeGen/LoongArch/ir-instruction/sdiv-udiv-srem-urem.ll

  Log Message:
  -----------
   [LoongArch][ISel] Check the number of sign bits in `PatGprGpr_32` (#107432)

After https://github.com/llvm/llvm-project/pull/92205, LoongArch ISel
selects `div.w` for `trunc i64 (sdiv i64 3202030857, (sext i32 X to
i64)) to i32`. It is incorrect since `3202030857` is not a signed 32-bit
constant. It will produce wrong result when `X == 2`:
https://alive2.llvm.org/ce/z/pzfGZZ

This patch adds additional `sexti32` checks to operands of
`PatGprGpr_32`.
Alive2 proof: https://alive2.llvm.org/ce/z/AkH5Mp

Fix #107414.


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

  Changed paths:
    M llvm/include/llvm/TableGen/DirectiveEmitter.h
    M llvm/utils/TableGen/DirectiveEmitter.cpp

  Log Message:
  -----------
  [NFC][TableGen] Simplify DirectiveEmitter using range for loops (#107909)

Make constructors that take const Record * implicit, allowing us to
simplify some range based loops to use that class instance as the loop
variable.

Change remaining constructor calls to use () instead of {} to construct
objects.


  Commit: e64a1c00c1d612dccd976c06fdac85afa3b06fbe
      https://github.com/llvm/llvm-project/commit/e64a1c00c1d612dccd976c06fdac85afa3b06fbe
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M llvm/test/Other/opt-hot-cold-split.ll

  Log Message:
  -----------
  Fix unintended extra commit in PR #107499


  Commit: 1ca411ca451e0e86caf9207779616f32ed9fd908
      https://github.com/llvm/llvm-project/commit/1ca411ca451e0e86caf9207779616f32ed9fd908
  Author: wanglei <wanglei at loongson.cn>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
    A llvm/test/CodeGen/LoongArch/lasx/issue107355.ll

  Log Message:
  -----------
  [LoongArch] Codegen for concat_vectors with LASX

Fixes: #107355

Reviewed By: SixWeining

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


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

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/test/src/math/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/math/libc_math_test_rules.bzl
    M utils/bazel/llvm-project-overlay/libc/test/src/math/smoke/BUILD.bazel

  Log Message:
  -----------
  [bazel][libc][NFC] Add missing layering deps (#107947)

After 277371943fa48f2550df02870951f5e5a77efef5

e.g.

```
external/llvm-project/libc/test/src/math/smoke/NextTowardTest.h:12:10: error: module llvm-project//libc/test/src/math/smoke:nexttowardf_test does not depend on a module exporting 'src/__support/CPP/bit.h'
```


  Commit: 761bf333e378b52614cf36cd5db2837d5e4e0ae4
      https://github.com/llvm/llvm-project/commit/761bf333e378b52614cf36cd5db2837d5e4e0ae4
  Author: Yuxuan Chen <ych at fb.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Coroutines/CoroAnnotationElide.h
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Transforms/Coroutines/CoroAnnotationElide.cpp

  Log Message:
  -----------
  [LLVM][Coroutines] Switch CoroAnnotationElidePass to a FunctionPass (#107897)

After landing https://github.com/llvm/llvm-project/pull/99285 we found
that the call graph update was causing the following crash when
expensive checks are turned on
```
llvm-project/llvm/lib/Analysis/CGSCCPassManager.cpp:982: LazyCallGraph::SCC &updateCGAndAnalysisManagerForPass(LazyCallGraph &, LazyCallGraph::SCC &, LazyCallGraph::Node &, CGSCCAnalysisManager &, CGSCCUpdateResult &, FunctionAnalysisManager &, bool): Assertion `(RC == &TargetRC || RC->isAncestorOf(Targe
tRC)) && "New call edge is not trivial!"' failed.                                                                                                                                                                                                                                                                               
```
I have to admit I believe that the call graph update process I did for
that patch could be wrong.

After reading the code in `CGSCCToFunctionPassAdaptor`, I am convinced
that `CoroAnnotationElidePass` can be a FunctionPass and rely on the
adaptor to update the call graph for us, so long as we properly
invalidate the caller's analyses.

After this patch,
`llvm/test/Transforms/Coroutines/coro-transform-must-elide.ll` no longer
fails under expensive checks.


  Commit: eb0e4b1415800e34b86319ce1d57ad074d5ca202
      https://github.com/llvm/llvm-project/commit/eb0e4b1415800e34b86319ce1d57ad074d5ca202
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M compiler-rt/test/fuzzer/compressed.test
    M compiler-rt/test/lit.common.cfg.py
    M compiler-rt/test/lit.common.configured.in

  Log Message:
  -----------
  [Fuzzer] Passthrough zlib CMake paths into the test (#107926)

We shouldn't assume that we're using system zlib installation.


  Commit: ffcff4af59712792712b33648f8ea148b299c364
      https://github.com/llvm/llvm-project/commit/ffcff4af59712792712b33648f8ea148b299c364
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/InstCombine/cttz.ll
    M llvm/test/Transforms/InstCombine/icmp.ll
    M llvm/test/Transforms/InstCombine/rem.ll

  Log Message:
  -----------
  [ValueTracking] Infer is-power-of-2 from assumptions. (#107745)

This patch tries to infer is-power-of-2 from assumptions. I don't see
that this kind of assumption exists in my dataset.
Related issue: https://github.com/rust-lang/rust/issues/129795

Close https://github.com/llvm/llvm-project/issues/58996.


  Commit: 56905dab7da50bccfcceaeb496b206ff476127e1
      https://github.com/llvm/llvm-project/commit/56905dab7da50bccfcceaeb496b206ff476127e1
  Author: JinjinLi868 <lijinjin.868 at bytedance.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M clang/lib/CodeGen/CGExprScalar.cpp
    A clang/test/CodeGen/X86/bfloat16-convert-half.c

  Log Message:
  -----------
  [clang] fix half && bfloat16 convert node expr codegen (#89051)

Data type conversion between fp16 and bf16 will generate fptrunc and
fpextend nodes, but they are actually bitcast nodes.


  Commit: dce50397b52e33e927ffb1d1c40765109abf40f0
      https://github.com/llvm/llvm-project/commit/dce50397b52e33e927ffb1d1c40765109abf40f0
  Author: Tim Gymnich <tgymnich at icloud.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaHLSL.cpp
    A clang/test/CodeGenHLSL/builtins/sign.hlsl
    A clang/test/SemaHLSL/BuiltIns/sign-errors.hlsl

  Log Message:
  -----------
  [clang][HLSL] Add sign intrinsic part 3 (#101989)

partially fixes #70078

### Changes
- Implemented `sign` clang builtin
- Linked `sign` clang builtin with `hlsl_intrinsics.h`
- Added sema checks for `sign` to `CheckHLSLBuiltinFunctionCall` in
`SemaChecking.cpp`
- Add codegen for `sign` to `EmitHLSLBuiltinExpr` in `CGBuiltin.cpp`
- Add codegen tests to `clang/test/CodeGenHLSL/builtins/sign.hlsl`
- Add sema tests to `clang/test/SemaHLSL/BuiltIns/sign-errors.hlsl`

### Related PRs
- https://github.com/llvm/llvm-project/pull/101987
- https://github.com/llvm/llvm-project/pull/101988

### Discussion
- Should there be a `usign` intrinsic that handles the unsigned cases?


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

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

  Log Message:
  -----------
  [bazel][libc][NFC] Add missing dep for standalone compile (#107957)

One more after 277371943fa48f2550df02870951f5e5a77efef5


  Commit: 7034ec491251e598d2867199f89fefa3eb16a1a0
      https://github.com/llvm/llvm-project/commit/7034ec491251e598d2867199f89fefa3eb16a1a0
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/Core.cpp

  Log Message:
  -----------
  [ORC] Remove EDU from dependants list of dependencies before destroying.

Dependant lists hold raw pointers back to EDUs that depend on them. We need to
remove these entries before destroying the EDU or we'll be left with a dangling
reference that can result in use-after-free bugs.

No testcase: This has only been observed in multi-threaded setups that
reproduce the issue inconsistently.

rdar://135403614


  Commit: 094e6b82766a4a3fbe75bd116fd01174518528c3
      https://github.com/llvm/llvm-project/commit/094e6b82766a4a3fbe75bd116fd01174518528c3
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/unittests/IR/InstructionsTest.cpp

  Log Message:
  -----------
  [IR] Make UnaryInstruction::classof recognize FreezeInst. (#107944)


  Commit: 492683527eda7ef055660842d9a6b7e2575ae208
      https://github.com/llvm/llvm-project/commit/492683527eda7ef055660842d9a6b7e2575ae208
  Author: Jacob Lalonde <jalalonde at fb.com>
  Date:   2024-09-09 (Mon, 09 Sep 2024)

  Changed paths:
    M lldb/source/Plugins/Process/minidump/MinidumpParser.cpp
    M lldb/source/Plugins/Process/minidump/MinidumpParser.h
    M lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp
    M lldb/source/Plugins/Process/minidump/ProcessMinidump.h
    M lldb/test/API/functionalities/postmortem/minidump-new/TestMiniDumpNew.py
    A lldb/test/API/functionalities/postmortem/minidump-new/multiple-sigsev.yaml
    M lldb/unittests/Process/minidump/MinidumpParserTest.cpp

  Log Message:
  -----------
  [LLDB][Minidump] Support minidumps where there are multiple exception streams (#97470)

Currently, LLDB assumes all minidumps will have unique sections. This is
intuitive because almost all of the minidump sections are themselves
lists. Exceptions including Signals are unique in that they are all
individual sections with their own directory.

This means LLDB fails to load minidumps with multiple exceptions due to
them not being unique. This behavior is erroneous and this PR introduces
support for an arbitrary number of exception streams. Additionally, stop
info was calculated only for a single thread before, and now we properly
support mapping exceptions to threads.

~~This PR is starting in DRAFT because implementing testing is still
required.~~


  Commit: 3928edecfbd116d56bbe7411365d50bb567380a1
      https://github.com/llvm/llvm-project/commit/3928edecfbd116d56bbe7411365d50bb567380a1
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [clang][bytecode] Fix local destructor order (#107951)

Add appropriate scopes and use reverse-order iteration in
LocalScope::emitDestructors().


  Commit: 462251b80b7ba51dc6c2ef3676cf50ee92867d34
      https://github.com/llvm/llvm-project/commit/462251b80b7ba51dc6c2ef3676cf50ee92867d34
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M compiler-rt/lib/orc/coff_platform.cpp
    M compiler-rt/lib/orc/elfnix_platform.cpp
    A compiler-rt/lib/orc/jit_dispatch.h
    M compiler-rt/lib/orc/macho_platform.cpp
    M compiler-rt/lib/orc/wrapper_function_utils.h

  Log Message:
  -----------
  [ORC-RT] Replace FnTag arg of WrapperFunction::call with generic dispatch arg.

This decouples function argument serialization / deserialization from the
function call dispatch mechanism. This will eventually allow us to replace the
existing __orc_rt_jit_dispatch function with a system that supports pre-linking
parts of the ORC runtime into the executor.


  Commit: 9b67c99dc5b0d669a28b714e10e257d3988d1066
      https://github.com/llvm/llvm-project/commit/9b67c99dc5b0d669a28b714e10e257d3988d1066
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M compiler-rt/lib/orc/elfnix_platform.cpp

  Log Message:
  -----------
  [ORC-RT] Fix typo in 462251b80b7.


  Commit: b71d88ca5bf42533b822be782ed9066e68011e95
      https://github.com/llvm/llvm-project/commit/b71d88ca5bf42533b822be782ed9066e68011e95
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
    M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-to-vmv.mir

  Log Message:
  -----------
  [RISCV] Constrain passthru regclass in vmerge -> vmv peephole

In #107827 we now set true's passthru to the false operand if it was
undef. We need to remember to also constrain the regclass in case true
is a masked pseudo which needs its passthrus to be in VR[M*]NoV0


  Commit: 7ba6768df8181bc270763333969d4a1d6cc2e160
      https://github.com/llvm/llvm-project/commit/7ba6768df8181bc270763333969d4a1d6cc2e160
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
    A llvm/test/CodeGen/RISCV/rvv/pr107950.ll

  Log Message:
  -----------
  Revert "[RISCV] Update V0Defs after moving Src in peepholes (#107359)"

This fixes #107950 and adds a test case for it. The issue was due to
us incorrectly assuming that we stored a V0Defs entry for every single
instruction.

We actually only store them for instructions that use V0, so when we
updated the V0Def after moving we sometimes ended up copying nullptr
over from an instruction that doesn't use V0 and clearing the V0Def
entry inadvertently.

Because we don't have V0Defs on instructions that don't use V0, the
FIXME was never actually needed in the first place since the
bookkeeping wasn't out of sync to begin with.

That commit also mentioned that a future unmasked to masked pseudo
peephole might need unmasked pseudos to have V0Defs entries, but after
working on this locally it turns out we don't.

This reverts commit ce3648094d44e8c098396a353b215acecb363cda.


  Commit: ed0da008258a3a7df14caa906e23e660174d2507
      https://github.com/llvm/llvm-project/commit/ed0da008258a3a7df14caa906e23e660174d2507
  Author: serge-sans-paille <sguelton at mozilla.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M libcxx/include/string

  Log Message:
  -----------
  [libc++][string] Remove potential non-trailing 0-length array (#105865)

It is a violation of the standard to use 0 length arrays, especially
when not at the end of a structure (not a FAM GNU extension). Compiler
generally accept it, but it's probably better to have a conforming
implementation.

---------

Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>


  Commit: 06c331163e779875ad9e74dd2da99d6b90f6e5bd
      https://github.com/llvm/llvm-project/commit/06c331163e779875ad9e74dd2da99d6b90f6e5bd
  Author: Qiu Chaofan <qcf at ecnelises.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [PowerPC] Implement llvm.set.rounding intrinsic (#67302)


  Commit: bece0d7517bd0a036dc8a319514e4a8a5c497dee
      https://github.com/llvm/llvm-project/commit/bece0d7517bd0a036dc8a319514e4a8a5c497dee
  Author: Thorsten Schütt <schuett at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/docs/GlobalISel/MIRPatterns.rst

  Log Message:
  -----------
  [GlobalIsel] Update MIR gallery (#107903)

add more patterns
clarify wip_match_opcode usage


  Commit: 1c334debecd70bd28e61a36c40c3f96cf5467331
      https://github.com/llvm/llvm-project/commit/1c334debecd70bd28e61a36c40c3f96cf5467331
  Author: Brad Smith <brad at comstyle.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Support/Unix/Threading.inc

  Log Message:
  -----------
  [llvm][Support] Determine the max thread length on Haiku (#107801)

Haiku has pthread_setname_np() / pthread_getname_np().


  Commit: 1581183d59b87760521e7223df3ff25c57e72fb3
      https://github.com/llvm/llvm-project/commit/1581183d59b87760521e7223df3ff25c57e72fb3
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  Revert "[llvm-ml] Fix RIP-relative addressing for ptr operands (#107618)"

This reverts commit 7543d09b852695187d08aa5d56d50016fea8f706.

This change caused failed asserts when building the openmp assembly
sources, reproducible with:

    $ llvm-ml -m64 -D_M_AMD64 -c -Fo out.obj openmp/runtime/src/z_Windows_NT-586_asm.asm
    llvm-ml: ../lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp:624: void {anonymous}::X86MCCodeEmitter::emitMemModRMByte(const llvm::MCInst&, unsigned int, unsigned int, uint64_t, {anonymous}::PrefixKind, uint64_t, llvm::SmallVectorImpl<char>&, llvm::SmallVectorImpl<llvm::MCFixup>&, const llvm::MCSubtargetInfo&, bool) const: Assertion `IndexReg.getReg() == 0 && !ForceSIB && "Invalid rip-relative address"' failed.

The assert can also be triggered with one lone instruction:

    lea rdx, QWORD PTR [rax*8+16]


  Commit: 958f59d90fbc1cb2ae186246c8a64fec9e3ecd6e
      https://github.com/llvm/llvm-project/commit/958f59d90fbc1cb2ae186246c8a64fec9e3ecd6e
  Author: Henrich Lauko <xlauko at mail.muni.cz>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M mlir/include/mlir/Interfaces/CallInterfaces.h
    M mlir/include/mlir/Interfaces/CallInterfaces.td
    M mlir/lib/Analysis/CallGraph.cpp
    M mlir/lib/Analysis/DataFlow/DeadCodeAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/DenseAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp
    M mlir/lib/Interfaces/CallInterfaces.cpp

  Log Message:
  -----------
  [MLIR] Make `resolveCallable` customizable in `CallOpInterface` (#100361)

Allow customization of the `resolveCallable` method in the
`CallOpInterface`. This change allows for operations implementing this
interface to provide their own logic for resolving callables.

- Introduce the `resolveCallable` method, which does not include the
optional symbol table parameter. This method replaces the previously
existing extra class declaration `resolveCallable`.

- Introduce the `resolveCallableInTable` method, which incorporates the
symbol table parameter. This method replaces the previous extra class
declaration `resolveCallable` that used the optional symbol table
parameter.


  Commit: 831236e78ce90526832da00804511ca35e3b527d
      https://github.com/llvm/llvm-project/commit/831236e78ce90526832da00804511ca35e3b527d
  Author: Pradeep Kumar <pradeepku at nvidia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/test/Target/LLVMIR/nvvmir.mlir

  Log Message:
  -----------
  [MLIR][NVVM] Add support for nvvm.breakpoint Op (#107193)

This commit adds support for `nvvm.breakpoint` Op which lowers to the
PTX brkpt instruction. Also, added the respective tests in `nvvmir.mlir`


  Commit: 53d35c4e86ba85703a70b02f736bc31d3268bd34
      https://github.com/llvm/llvm-project/commit/53d35c4e86ba85703a70b02f736bc31d3268bd34
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M compiler-rt/lib/orc/coff_platform.cpp
    M compiler-rt/lib/orc/elfnix_platform.cpp
    R compiler-rt/lib/orc/jit_dispatch.h
    M compiler-rt/lib/orc/macho_platform.cpp
    M compiler-rt/lib/orc/wrapper_function_utils.h

  Log Message:
  -----------
  Revert "[ORC-RT] Replace FnTag arg of WrapperFunction::call with generic dispatch arg."

This reverts commit 462251b80b7ba51dc6c2ef3676cf50ee92867d34.
This reverts commit 9b67c99dc5b0d669a28b714e10e257d3988d1066.

Build fails for compiler-rt/lib/orc/tests/unit/wrapper_function_utils_test.cpp

https://buildkite.com/llvm-project/upstream-bazel/builds/109731#0191da59-6710-4420-92ef-aa6e0355cb2c


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

  Changed paths:
    M mlir/include/mlir/Interfaces/CallInterfaces.h
    M mlir/include/mlir/Interfaces/CallInterfaces.td
    M mlir/lib/Analysis/CallGraph.cpp
    M mlir/lib/Analysis/DataFlow/DeadCodeAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/DenseAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp
    M mlir/lib/Interfaces/CallInterfaces.cpp

  Log Message:
  -----------
  Revert "[MLIR] Make `resolveCallable` customizable in `CallOpInterface`" (#107984)

Reverts llvm/llvm-project#100361

This commit caused some linker errors. (Missing `MLIRCallInterfaces`
dependency.)


  Commit: 8aeb104ce4d0907f2f1f5286611d6c2202d4ce53
      https://github.com/llvm/llvm-project/commit/8aeb104ce4d0907f2f1f5286611d6c2202d4ce53
  Author: Hugo Trachino <hugo.trachino at huawei.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/matmul-transpose-a.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/matmul.mlir

  Log Message:
  -----------
  [mlir][SME] Update E2E test to show optional loop optimisation (NFC) (#107585)

Introduces loop hoisting to ARM SME E2E tests to allow the hoisting of
the tile load offering very important speedup.

Discussed here :
https://discourse.llvm.org/t/mlir-for-arm-sme-reducing-tile-data-transfers/80065/2


  Commit: 7e07c1df678825c6a57d5fb1d36cdfc1584de9dc
      https://github.com/llvm/llvm-project/commit/7e07c1df678825c6a57d5fb1d36cdfc1584de9dc
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [DAG] expandAVG - consistently use getShiftAmountConstant for constant shift amounts. NFC


  Commit: 918222ba43f6e56208ad347ed10a3e0025d8ed38
      https://github.com/llvm/llvm-project/commit/918222ba43f6e56208ad347ed10a3e0025d8ed38
  Author: Sergey Kozub <skozub at nvidia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/unittests/ADT/APFloatTest.cpp
    M mlir/include/mlir-c/BuiltinTypes.h
    M mlir/include/mlir/IR/Builders.h
    M mlir/include/mlir/IR/BuiltinTypes.h
    M mlir/include/mlir/IR/BuiltinTypes.td
    M mlir/include/mlir/IR/CommonTypeConstraints.td
    M mlir/include/mlir/IR/Types.h
    M mlir/lib/AsmParser/TokenKinds.def
    M mlir/lib/AsmParser/TypeParser.cpp
    M mlir/lib/Bindings/Python/IRTypes.cpp
    M mlir/lib/CAPI/IR/BuiltinTypes.cpp
    M mlir/lib/Conversion/LLVMCommon/TypeConverter.cpp
    M mlir/lib/Dialect/Arith/Transforms/EmulateUnsupportedFloats.cpp
    M mlir/lib/IR/AsmPrinter.cpp
    M mlir/lib/IR/Builders.cpp
    M mlir/lib/IR/BuiltinTypes.cpp
    M mlir/lib/IR/MLIRContext.cpp
    M mlir/lib/IR/Types.cpp
    M mlir/python/mlir/_mlir_libs/_mlir/ir.pyi
    M mlir/python/mlir/extras/types.py
    M mlir/test/IR/attribute.mlir
    M mlir/test/Target/LLVMIR/llvmir.mlir
    M mlir/test/python/ir/builtin_types.py
    M mlir/utils/lldb-scripts/mlirDataFormatters.py
    M mlir/utils/tree-sitter-mlir/grammar.js

  Log Message:
  -----------
  [MLIR] Add f6E3M2FN type (#105573)

This PR adds `f6E3M2FN` type to mlir.

`f6E3M2FN` type is proposed in [OpenCompute MX
Specification](https://www.opencompute.org/documents/ocp-microscaling-formats-mx-v1-0-spec-final-pdf).
It defines a 6-bit floating point number with bit layout S1E3M2. Unlike
IEEE-754 types, there are no infinity or NaN values.

```c
f6E3M2FN
- Exponent bias: 3
- Maximum stored exponent value: 7 (binary 111)
- Maximum unbiased exponent value: 7 - 3 = 4
- Minimum stored exponent value: 1 (binary 001)
- Minimum unbiased exponent value: 1 − 3 = −2
- Has Positive and Negative zero
- Doesn't have infinity
- Doesn't have NaNs

Additional details:
- Zeros (+/-): S.000.00
- Max normal number: S.111.11 = ±2^(4) x (1 + 0.75) = ±28
- Min normal number: S.001.00 = ±2^(-2) = ±0.25
- Max subnormal number: S.000.11 = ±2^(-2) x 0.75 = ±0.1875
- Min subnormal number: S.000.01 = ±2^(-2) x 0.25 = ±0.0625
```

Related PRs:
- [PR-94735](https://github.com/llvm/llvm-project/pull/94735) [APFloat]
Add APFloat support for FP6 data types
- [PR-97118](https://github.com/llvm/llvm-project/pull/97118) [MLIR] Add
f8E4M3 type - was used as a template for this PR


  Commit: 083e25c1d4d9f1af1c4d62109067aecbb4dd2564
      https://github.com/llvm/llvm-project/commit/083e25c1d4d9f1af1c4d62109067aecbb4dd2564
  Author: Sergey Kozub <skozub at nvidia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M mlir/lib/IR/BuiltinTypes.cpp

  Log Message:
  -----------
  [MLIR] [NFC] Use APFloat semantics to get floating type width (#107372)

As suggested in the comments of
https://github.com/llvm/llvm-project/pull/105573


  Commit: 0f47e3aebdd2a4a938468a272ea4224552dbf176
      https://github.com/llvm/llvm-project/commit/0f47e3aebdd2a4a938468a272ea4224552dbf176
  Author: hev <wangrui at loongson.cn>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchOptWInstrs.cpp
    M llvm/test/CodeGen/LoongArch/ir-instruction/sdiv-udiv-srem-urem.ll

  Log Message:
  -----------
  [LoongArch] Eliminate the redundant sign extension of division (#107971)

If all incoming values of `div.d` are sign-extended and all users only
use the lower 32 bits, then convert them to W versions.

Fixes: #107946


  Commit: bf694841f5b986f677e4fbe2a7ee93c77690d765
      https://github.com/llvm/llvm-project/commit/bf694841f5b986f677e4fbe2a7ee93c77690d765
  Author: Igor Kirillov <igor.kirillov at arm.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [VectorCombine] Add type shrinking and zext propagation for fixed-width vector types (#104606)

Check that `binop(zext(value)`, other) is possible and profitable to transform
into: `zext(binop(value, trunc(other)))`.
When CPU architecture has illegal scalar type iX, but vector type <N * iX> is
legal, scalar expressions before vectorisation may be extended to a legal
type iY. This extension could result in underutilization of vector lanes,
as more lanes could be used at one instruction with the lower type.
Vectorisers may not always recognize opportunities for type shrinking, and
this patch aims to address that limitation.


  Commit: edbe8faba12dd27e48411e3e0b57b19b0dc03929
      https://github.com/llvm/llvm-project/commit/edbe8faba12dd27e48411e3e0b57b19b0dc03929
  Author: MichelleCDjunaidi <michellechrisalyn at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/docs/TestSuiteGuide.md

  Log Message:
  -----------
  [llvm][Docs] Update guide to include ``pip install lit`` (#106526)

Also updates and clarifies which version would be installed.

As per
https://discourse.llvm.org/t/information-on-lit-is-outdated/76498.


  Commit: a99d666713ebfedf65e56bed5e87312eba6e5b11
      https://github.com/llvm/llvm-project/commit/a99d666713ebfedf65e56bed5e87312eba6e5b11
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [MLIR][OpenMP] Replace index-based loop (NFC) (#107878)


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/outer_loop_prefer_scalable.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-avoid-scalarization.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-gather-scatter.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-inductions-unusual-types.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-inductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/vplan-force-tail-with-evl.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/blocks-with-dead-instructions.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/mask-index-type.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/pr87378-vpinstruction-or-drop-poison-generating-flags.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cond-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-interleave.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
    M llvm/test/Transforms/LoopVectorize/icmp-uniforms.ll
    M llvm/test/Transforms/LoopVectorize/outer_loop_scalable.ll
    M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/scalable-inductions.ll
    M llvm/test/Transforms/LoopVectorize/vplan-iv-transforms.ll
    M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
    M llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll

  Log Message:
  -----------
  [VPlan] Add VPValue for VF, use it for VPWidenIntOrFpInductionRecipe. (#95305)

Similar to VFxUF, also add a VF VPValue to VPlan and use it to get the
runtime VF in VPWidenIntOrFpInductionRecipe. Code for VF is only
generated if there are users of VF, to avoid unnecessary test changes.

PR: https://github.com/llvm/llvm-project/pull/95305


  Commit: 2778d9d63bcb6eb7d58bbab1131b4e711c1f60c4
      https://github.com/llvm/llvm-project/commit/2778d9d63bcb6eb7d58bbab1131b4e711c1f60c4
  Author: Dmitriy Smirnov <dmitriy.smirnov at arm.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir

  Log Message:
  -----------
  [TOSA] tosa.negate operator lowering update (#107924)

This PR makes tosa.negate op for integer types to use the simplified
calculation branch if input_zp and output_zp values are also zero.

Signed-off-by: Dmitriy Smirnov <dmitriy.smirnov at arm.com>


  Commit: 69f8923efa61034b57805a8d6d859e9c1ca976eb
      https://github.com/llvm/llvm-project/commit/69f8923efa61034b57805a8d6d859e9c1ca976eb
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M compiler-rt/lib/orc/coff_platform.cpp
    M compiler-rt/lib/orc/elfnix_platform.cpp
    A compiler-rt/lib/orc/jit_dispatch.h
    M compiler-rt/lib/orc/macho_platform.cpp
    M compiler-rt/lib/orc/tests/unit/wrapper_function_utils_test.cpp
    M compiler-rt/lib/orc/wrapper_function_utils.h

  Log Message:
  -----------
  Re-apply "[ORC-RT] Replace FnTag arg of WrapperFunction::call..." with fixes.

This reapplies commits 462251b80b7 and 9b67c99dc5b, which were reverted in
53d35c4e86b due to bot failures for the wrapper_function_utils_test.cpp unit
test.


  Commit: 23595d1b9621067e5354924e2ca78e866a85690e
      https://github.com/llvm/llvm-project/commit/23595d1b9621067e5354924e2ca78e866a85690e
  Author: adprasad-nvidia <adprasad at nvidia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/bswap.ll

  Log Message:
  -----------
  [AArch64] Lower __builtin_bswap16 to rev16 if bswap followed by any_extend (#105375)

GCC compiles the built-in function `__builtin_bswap16`, to the ARM
instruction rev16, which reverses the byte order of 16-bit data. On the
other Clang compiles the same built-in function to e.g.
```     
        rev     w8, w0
        lsr     w0, w8, #16
```
i.e. it performs a byte reversal of a 32-bit register, (which moves the
lower half, which contains the 16-bit data, to the upper half) and then
right shifts the reversed 16-bit data back to the lower half of the
register.
We can improve Clang codegen by generating `rev16` instead of `rev` and
`lsr`, like GCC.


  Commit: 516f08b4158c2dbe71766ac0b12f457761d1ed37
      https://github.com/llvm/llvm-project/commit/516f08b4158c2dbe71766ac0b12f457761d1ed37
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseN2.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    M llvm/test/MC/AArch64/SVE2p1/bfadd.s
    M llvm/test/MC/AArch64/SVE2p1/bfclamp.s
    M llvm/test/MC/AArch64/SVE2p1/bfmax.s
    M llvm/test/MC/AArch64/SVE2p1/bfmaxnm.s
    M llvm/test/MC/AArch64/SVE2p1/bfmin.s
    M llvm/test/MC/AArch64/SVE2p1/bfminnm.s
    M llvm/test/MC/AArch64/SVE2p1/bfmla.s
    M llvm/test/MC/AArch64/SVE2p1/bfmls.s
    M llvm/test/MC/AArch64/SVE2p1/bfmul.s
    M llvm/test/MC/AArch64/SVE2p1/bfsub.s

  Log Message:
  -----------
  [LLVM][AArch64] Refactor sve-b16b16 instruction definitions. (#107265)

Update the predicate protecting bfloat instructions to only reference
FEAT_SVE_B16B16, which matches the specification.

Rename and move instruction classes to match the names of the encoding
groups the bfloat arithmetic instructions belong.


  Commit: 433ca3ebbef50002bec716ef2c6d6a82db71048d
      https://github.com/llvm/llvm-project/commit/433ca3ebbef50002bec716ef2c6d6a82db71048d
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M flang/include/flang/Lower/SymbolMap.h
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp

  Log Message:
  -----------
  [Flang][Lower] Introduce SymMapScope helper class (NFC) (#107866)

This patch creates a simple RAII wrapper class for `SymMap` to make it
easier to use and prevent a missing matching `popScope()` for a
`pushScope()` call on simple use cases.

Some push-pop pairs are replaced with instances of the new class by this
patch.


  Commit: fffdd9ed4293f89a1680333fbf17cbab204d0050
      https://github.com/llvm/llvm-project/commit/fffdd9ed4293f89a1680333fbf17cbab204d0050
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [bazel] Port 69f8923efa61034b57805a8d6d859e9c1ca976eb


  Commit: 925b220ee424f8489bc8d7b1a247f2c5f3edde5d
      https://github.com/llvm/llvm-project/commit/925b220ee424f8489bc8d7b1a247f2c5f3edde5d
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.h
    A lldb/test/Shell/SymbolFile/DWARF/x86/type-unit-same-basename.cpp

  Log Message:
  -----------
  [lldb] Recurse through DW_AT_signature when looking for attributes (#107241)

This allows e.g. DWARFDIE::GetName() to return the name of the type when
looking at its declaration (which contains only
DW_AT_declaration+DW_AT_signature). This is similar to how we recurse
through DW_AT_specification when looking for a function name. Llvm dwarf
parser has obtained the same functionality through #99495.

This fixes a bug where we would confuse a type like NS::Outer::Struct
with NS::Struct (because NS::Outer (and its name) was in a type unit).


  Commit: 468ba0e4ff9f175f3228f0b27915742a1f06a4c9
      https://github.com/llvm/llvm-project/commit/468ba0e4ff9f175f3228f0b27915742a1f06a4c9
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M clang/docs/ExternalClangExamples.rst
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Sema/Overload.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Compiler.h
    M clang/lib/Basic/Targets/SystemZ.h
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChains/Arch/SystemZ.cpp
    M clang/lib/Driver/ToolChains/Arch/SystemZ.h
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/MSVC.cpp
    M clang/lib/Headers/hexagon_types.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/test/AST/ByteCode/cxx2a.cpp
    M clang/test/CXX/temp/temp.res/temp.dep/temp.dep.type/p4.cpp
    A clang/test/CodeGen/X86/bfloat16-convert-half.c
    A clang/test/CodeGenHLSL/builtins/select.hlsl
    A clang/test/CodeGenHLSL/builtins/sign.hlsl
    M clang/test/Driver/cl-link.c
    M clang/test/Driver/hip-cuid.hip
    M clang/test/Preprocessor/predefined-arch-macros.c
    A clang/test/SemaHLSL/BuiltIns/select-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/sign-errors.hlsl
    M clang/test/SemaHLSL/TruncationOverloadResolution.hlsl
    M compiler-rt/CMakeLists.txt
    M compiler-rt/lib/asan/CMakeLists.txt
    M compiler-rt/lib/asan/asan_flags.cpp
    M compiler-rt/lib/asan/asan_globals_win.cpp
    M compiler-rt/lib/asan/asan_malloc_win.cpp
    A compiler-rt/lib/asan/asan_malloc_win_thunk.cpp
    A compiler-rt/lib/asan/asan_win_common_runtime_thunk.cpp
    A compiler-rt/lib/asan/asan_win_common_runtime_thunk.h
    R compiler-rt/lib/asan/asan_win_dll_thunk.cpp
    M compiler-rt/lib/asan/asan_win_dynamic_runtime_thunk.cpp
    A compiler-rt/lib/asan/asan_win_static_runtime_thunk.cpp
    R compiler-rt/lib/asan/asan_win_weak_interception.cpp
    M compiler-rt/lib/asan/tests/CMakeLists.txt
    M compiler-rt/lib/interception/CMakeLists.txt
    M compiler-rt/lib/orc/coff_platform.cpp
    M compiler-rt/lib/orc/elfnix_platform.cpp
    A compiler-rt/lib/orc/jit_dispatch.h
    M compiler-rt/lib/orc/macho_platform.cpp
    M compiler-rt/lib/orc/tests/unit/wrapper_function_utils_test.cpp
    M compiler-rt/lib/orc/wrapper_function_utils.h
    M compiler-rt/lib/profile/CMakeLists.txt
    M compiler-rt/lib/sanitizer_common/CMakeLists.txt
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interface.inc
    R compiler-rt/lib/sanitizer_common/sanitizer_coverage_win_dll_thunk.cpp
    R compiler-rt/lib/sanitizer_common/sanitizer_coverage_win_dynamic_runtime_thunk.cpp
    A compiler-rt/lib/sanitizer_common/sanitizer_coverage_win_runtime_thunk.cpp
    R compiler-rt/lib/sanitizer_common/sanitizer_coverage_win_weak_interception.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_tls_get_addr.cpp
    R compiler-rt/lib/sanitizer_common/sanitizer_win_dll_thunk.cpp
    R compiler-rt/lib/sanitizer_common/sanitizer_win_dll_thunk.h
    R compiler-rt/lib/sanitizer_common/sanitizer_win_dynamic_runtime_thunk.cpp
    A compiler-rt/lib/sanitizer_common/sanitizer_win_immortalize.h
    A compiler-rt/lib/sanitizer_common/sanitizer_win_interception.cpp
    A compiler-rt/lib/sanitizer_common/sanitizer_win_interception.h
    A compiler-rt/lib/sanitizer_common/sanitizer_win_thunk_interception.cpp
    A compiler-rt/lib/sanitizer_common/sanitizer_win_thunk_interception.h
    R compiler-rt/lib/sanitizer_common/sanitizer_win_weak_interception.cpp
    R compiler-rt/lib/sanitizer_common/sanitizer_win_weak_interception.h
    M compiler-rt/lib/scudo/standalone/primary32.h
    M compiler-rt/lib/scudo/standalone/primary64.h
    M compiler-rt/lib/scudo/standalone/release.h
    M compiler-rt/lib/scudo/standalone/tests/primary_test.cpp
    M compiler-rt/lib/ubsan/CMakeLists.txt
    R compiler-rt/lib/ubsan/ubsan_win_dll_thunk.cpp
    R compiler-rt/lib/ubsan/ubsan_win_dynamic_runtime_thunk.cpp
    A compiler-rt/lib/ubsan/ubsan_win_runtime_thunk.cpp
    R compiler-rt/lib/ubsan/ubsan_win_weak_interception.cpp
    M compiler-rt/test/asan/TestCases/Darwin/interface_symbols_darwin.cpp
    M compiler-rt/test/asan/TestCases/Linux/interface_symbols_linux.cpp
    M compiler-rt/test/asan/TestCases/Windows/double_free.cpp
    M compiler-rt/test/asan/TestCases/Windows/free_hook_realloc.cpp
    M compiler-rt/test/asan/TestCases/Windows/malloc_left_oob.cpp
    M compiler-rt/test/asan/TestCases/Windows/malloc_right_oob.cpp
    M compiler-rt/test/asan/TestCases/Windows/malloc_uaf.cpp
    M compiler-rt/test/asan/TestCases/Windows/msvc/dll_and_lib.cpp
    M compiler-rt/test/asan/TestCases/Windows/msvc/dll_large_function.cpp
    M compiler-rt/test/asan/TestCases/Windows/realloc_left_oob.cpp
    M compiler-rt/test/asan/TestCases/Windows/realloc_right_oob.cpp
    M compiler-rt/test/asan/TestCases/Windows/realloc_uaf.cpp
    M compiler-rt/test/asan/TestCases/Windows/symbols_path.cpp
    M compiler-rt/test/asan/TestCases/Windows/unsymbolized.cpp
    M compiler-rt/test/asan/TestCases/Windows/use_after_realloc.cpp
    M compiler-rt/test/asan/TestCases/debug_double_free.cpp
    M compiler-rt/test/asan/TestCases/debug_report.cpp
    M compiler-rt/test/asan/TestCases/default_options.cpp
    M compiler-rt/test/asan/TestCases/on_error_callback.cpp
    M compiler-rt/test/asan/TestCases/report_error_summary.cpp
    M compiler-rt/test/asan/lit.cfg.py
    M compiler-rt/test/fuzzer/compressed.test
    M compiler-rt/test/lit.common.cfg.py
    M compiler-rt/test/lit.common.configured.in
    M flang/include/flang/Lower/SymbolMap.h
    M flang/include/flang/Optimizer/Dialect/FIRType.h
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    A flang/test/Driver/xlinker.f90
    M flang/test/Lower/CUDA/cuda-devptr.cuf
    M libc/test/src/math/exp2f_test.cpp
    M libc/test/src/math/smoke/exp2f_test.cpp
    M libcxx/docs/Status/Cxx2cIssues.csv
    M libcxx/include/__filesystem/directory_entry.h
    M libcxx/include/__iterator/common_iterator.h
    M libcxx/include/__iterator/counted_iterator.h
    M libcxx/include/string
    M libcxx/src/filesystem/directory_iterator.cpp
    M libcxx/src/filesystem/file_descriptor.h
    M libcxx/src/include/overridable_function.h
    A libcxx/test/std/input.output/filesystems/class.rec.dir.itr/cache_refresh_iter.pass.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/LTO.cpp
    M lldb/source/Plugins/Process/minidump/MinidumpParser.cpp
    M lldb/source/Plugins/Process/minidump/MinidumpParser.h
    M lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp
    M lldb/source/Plugins/Process/minidump/ProcessMinidump.h
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.h
    M lldb/test/API/functionalities/postmortem/minidump-new/TestMiniDumpNew.py
    A lldb/test/API/functionalities/postmortem/minidump-new/multiple-sigsev.yaml
    A lldb/test/Shell/SymbolFile/DWARF/x86/type-unit-same-basename.cpp
    M lldb/unittests/Process/minidump/MinidumpParserTest.cpp
    M llvm/docs/DirectX/DXILResources.rst
    M llvm/docs/GlobalISel/MIRPatterns.rst
    M llvm/docs/TestSuiteGuide.md
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/include/llvm/LTO/Config.h
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/Object/IRSymtab.h
    A llvm/include/llvm/SandboxIR/Pass.h
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/SandboxIRValues.def
    M llvm/include/llvm/SandboxIR/Type.h
    M llvm/include/llvm/TableGen/DirectiveEmitter.h
    M llvm/include/llvm/Transforms/Coroutines/CoroAnnotationElide.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/ExecutionEngine/Orc/Core.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/SandboxIR/CMakeLists.txt
    A llvm/lib/SandboxIR/Pass.cpp
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/SandboxIR/Type.cpp
    M llvm/lib/Support/Unix/Threading.inc
    M llvm/lib/Support/raw_ostream.cpp
    M llvm/lib/Target/AArch64/AArch64.td
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseN2.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    M llvm/lib/Target/ARM/MCTargetDesc/ARMBaseInfo.h
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
    M llvm/lib/Target/DirectX/DXILOpBuilder.h
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchOptWInstrs.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Transforms/Coroutines/CoroAnnotationElide.cpp
    M llvm/lib/Transforms/IPO/ModuleInliner.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Analysis/CtxProfAnalysis/inline.ll
    M llvm/test/CodeGen/AArch64/bswap.ll
    A llvm/test/CodeGen/DirectX/BufferLoad.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/sdiv-udiv-srem-urem.ll
    A llvm/test/CodeGen/LoongArch/lasx/issue107355.ll
    M llvm/test/CodeGen/NVPTX/LoadStoreVectorizer.ll
    A llvm/test/CodeGen/NVPTX/copysign.ll
    M llvm/test/CodeGen/NVPTX/math-intrins.ll
    M llvm/test/CodeGen/PowerPC/frounds.ll
    A llvm/test/CodeGen/RISCV/rvv/pr107950.ll
    M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-to-vmv.mir
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/sign.ll
    M llvm/test/CodeGen/X86/pull-conditional-binop-through-shift.ll
    M llvm/test/MC/AArch64/SVE2p1/bfadd.s
    M llvm/test/MC/AArch64/SVE2p1/bfclamp.s
    M llvm/test/MC/AArch64/SVE2p1/bfmax.s
    M llvm/test/MC/AArch64/SVE2p1/bfmaxnm.s
    M llvm/test/MC/AArch64/SVE2p1/bfmin.s
    M llvm/test/MC/AArch64/SVE2p1/bfminnm.s
    M llvm/test/MC/AArch64/SVE2p1/bfmla.s
    M llvm/test/MC/AArch64/SVE2p1/bfmls.s
    M llvm/test/MC/AArch64/SVE2p1/bfmul.s
    M llvm/test/MC/AArch64/SVE2p1/bfsub.s
    M llvm/test/ThinLTO/X86/ctxprof.ll
    M llvm/test/Transforms/InstCombine/cttz.ll
    M llvm/test/Transforms/InstCombine/icmp.ll
    M llvm/test/Transforms/InstCombine/rem.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/outer_loop_prefer_scalable.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-avoid-scalarization.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-gather-scatter.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-inductions-unusual-types.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-inductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/vplan-force-tail-with-evl.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/blocks-with-dead-instructions.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/mask-index-type.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/pr87378-vpinstruction-or-drop-poison-generating-flags.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cond-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-interleave.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
    M llvm/test/Transforms/LoopVectorize/icmp-uniforms.ll
    M llvm/test/Transforms/LoopVectorize/outer_loop_scalable.ll
    M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/scalable-inductions.ll
    M llvm/test/Transforms/LoopVectorize/vplan-iv-transforms.ll
    M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
    M llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll
    A llvm/test/Transforms/VectorCombine/AArch64/shrink-types.ll
    M llvm/test/tools/llvm-ml/rip_relative_addressing.asm
    M llvm/tools/lto/lto.cpp
    M llvm/unittests/ADT/APFloatTest.cpp
    M llvm/unittests/IR/InstructionsTest.cpp
    M llvm/unittests/SandboxIR/CMakeLists.txt
    A llvm/unittests/SandboxIR/PassTest.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/SandboxIR/TypesTest.cpp
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp
    M llvm/utils/TableGen/CodeEmitterGen.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
    M llvm/utils/TableGen/Common/CodeGenHwModes.cpp
    M llvm/utils/TableGen/Common/CodeGenHwModes.h
    M llvm/utils/TableGen/Common/CodeGenInstAlias.cpp
    M llvm/utils/TableGen/Common/CodeGenInstAlias.h
    M llvm/utils/TableGen/Common/CodeGenInstruction.cpp
    M llvm/utils/TableGen/Common/CodeGenInstruction.h
    M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
    M llvm/utils/TableGen/Common/CodeGenRegisters.h
    M llvm/utils/TableGen/Common/CodeGenTarget.cpp
    M llvm/utils/TableGen/Common/CodeGenTarget.h
    M llvm/utils/TableGen/Common/InfoByHwMode.cpp
    M llvm/utils/TableGen/Common/InfoByHwMode.h
    M llvm/utils/TableGen/Common/VarLenCodeEmitterGen.cpp
    M llvm/utils/TableGen/CompressInstEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherGen.cpp
    M llvm/utils/TableGen/DXILEmitter.cpp
    M llvm/utils/TableGen/DecoderEmitter.cpp
    M llvm/utils/TableGen/DirectiveEmitter.cpp
    M llvm/utils/TableGen/FastISelEmitter.cpp
    M llvm/utils/TableGen/GlobalISelEmitter.cpp
    M llvm/utils/TableGen/InstrInfoEmitter.cpp
    M llvm/utils/TableGen/X86FoldTablesEmitter.cpp
    M llvm/utils/TableGen/X86InstrMappingEmitter.cpp
    M llvm/utils/lit/lit/run.py
    M llvm/utils/lit/lit/util.py
    M llvm/utils/mlgo-utils/mlgo/corpus/combine_training_corpus.py
    M llvm/utils/mlgo-utils/mlgo/corpus/extract_ir.py
    M llvm/utils/mlgo-utils/tests/corpus/extract_ir_test.py
    M mlir/include/mlir-c/BuiltinTypes.h
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/include/mlir/IR/Builders.h
    M mlir/include/mlir/IR/BuiltinTypes.h
    M mlir/include/mlir/IR/BuiltinTypes.td
    M mlir/include/mlir/IR/CommonTypeConstraints.td
    M mlir/include/mlir/IR/Types.h
    M mlir/lib/AsmParser/TokenKinds.def
    M mlir/lib/AsmParser/TypeParser.cpp
    M mlir/lib/Bindings/Python/IRTypes.cpp
    M mlir/lib/CAPI/IR/BuiltinTypes.cpp
    M mlir/lib/Conversion/LLVMCommon/TypeConverter.cpp
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
    M mlir/lib/Dialect/Arith/Transforms/EmulateUnsupportedFloats.cpp
    M mlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp
    M mlir/lib/IR/AsmPrinter.cpp
    M mlir/lib/IR/Builders.cpp
    M mlir/lib/IR/BuiltinTypes.cpp
    M mlir/lib/IR/MLIRContext.cpp
    M mlir/lib/IR/Types.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/python/mlir/_mlir_libs/_mlir/ir.pyi
    M mlir/python/mlir/extras/types.py
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
    M mlir/test/IR/attribute.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/matmul-transpose-a.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/matmul.mlir
    M mlir/test/Target/LLVMIR/llvmir.mlir
    M mlir/test/Target/LLVMIR/nvvmir.mlir
    M mlir/test/python/ir/builtin_types.py
    M mlir/utils/lldb-scripts/mlirDataFormatters.py
    M mlir/utils/tree-sitter-mlir/grammar.js
    M utils/bazel/llvm-project-overlay/compiler-rt/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/math/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/math/libc_math_test_rules.bzl
    M utils/bazel/llvm-project-overlay/libc/test/src/math/smoke/BUILD.bazel

  Log Message:
  -----------
  Rebase, address comments

Created using spr 1.3.5


Compare: https://github.com/llvm/llvm-project/compare/c0c554675465...468ba0e4ff9f

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