[all-commits] [llvm/llvm-project] 65c807: [lldb][TypeSystemClang] Allow transparent lookup t...

Paul Kirth via All-commits all-commits at lists.llvm.org
Mon Jul 1 13:59:52 PDT 2024


  Branch: refs/heads/users/ilovepi/spr/main.riscvlld-support-merging-risc-v-atomics-abi-attributes
  Home:   https://github.com/llvm/llvm-project
  Commit: 65c807e69545ec23c1a258f66f744874531c7d26
      https://github.com/llvm/llvm-project/commit/65c807e69545ec23c1a258f66f744874531c7d26
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/test/API/lang/cpp/namespace/TestNamespace.py
    M lldb/test/API/lang/cpp/namespace/main.cpp

  Log Message:
  -----------
  [lldb][TypeSystemClang] Allow transparent lookup through anonymous namespaces (#97275)

This patch allows expressions to reference entities in anonymous
namespaces. Previously this would have resulted in:
```
(lldb) expr foo::FooAnonymousVar
error: <user expression 0>:1:6: no member named 'FooAnonymousVar' in namespace 'foo'
    1 | foo::FooAnonymousVar
      | ~~~~~^
```

We already allow such lookups through inline namespaces, and for the
purposes of lookup, anonymous namespaces shouldn't behave any different.

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


  Commit: ae570d82e8c021f45209830db8c9c7bb79bed394
      https://github.com/llvm/llvm-project/commit/ae570d82e8c021f45209830db8c9c7bb79bed394
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
    M clang/include/clang/StaticAnalyzer/Core/BugReporter/Z3CrosscheckVisitor.h
    M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
    M clang/lib/StaticAnalyzer/Core/Z3CrosscheckVisitor.cpp
    M clang/test/Analysis/analyzer-config.c
    M clang/unittests/StaticAnalyzer/Z3CrosscheckOracleTest.cpp

  Log Message:
  -----------
  Reland "[analyzer] Harden safeguards for Z3 query times" (#97298)

This is exactly as originally landed in #95129,
but now the minimal Z3 version was increased to meet this change in #96682.

https://discourse.llvm.org/t/bump-minimal-z3-requirements-from-4-7-1-to-4-8-9/79664/4

---

This patch is a functional change.
https://discourse.llvm.org/t/analyzer-rfc-taming-z3-query-times/79520

As a result of this patch, individual Z3 queries in refutation will be
bound by 300ms. Every report equivalence class will be processed in at
most 1 second.

The heuristic should have only really marginal observable impact -
except for the cases when we had big report eqclasses with long-running
(15s) Z3 queries, where previously CSA effectively halted. After this
patch, CSA will tackle such extreme cases as well.

(cherry picked from commit eacc3b3504be061f7334410dd0eb599688ba103a)


  Commit: 2e81f7db1f1c161a1683bcad55e0c04677a17a9d
      https://github.com/llvm/llvm-project/commit/2e81f7db1f1c161a1683bcad55e0c04677a17a9d
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/test/Analysis/stream.c

  Log Message:
  -----------
  [analyzer] Fix crash in Stream checker when using void pointers (#97199)

We can get zero type size (thus div by zero crash) if the region is for a 'void*' pointer.
In this patch, let's just override the void type with a char type to avoid the crash.

Fixes
https://github.com/llvm/llvm-project/pull/93408#issuecomment-2189766510


  Commit: 5c287efee77930ab15fe5579bed00b2750bbb254
      https://github.com/llvm/llvm-project/commit/5c287efee77930ab15fe5579bed00b2750bbb254
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/lib/Sema/CheckExprLifetime.h
    M clang/lib/Sema/SemaExpr.cpp
    M clang/test/Parser/compound_literal.c
    M clang/test/SemaCXX/attr-lifetimebound.cpp
    M clang/test/SemaCXX/warn-dangling-local.cpp

  Log Message:
  -----------
  [Clang] Extend lifetime bound analysis to support assignments for the built-in pointer type (#96475)

The lifetime bound warning in Clang currently only considers
initializations. This patch extends the warning to include assignments.

- **Support for assignments of built-in pointer types**: this is done is
by reusing the existing statement-local implementation. Clang now warns
if the pointer is assigned to a temporary object that being destoryed at
the end of the full assignment expression.

With this patch, we will detect more cases under the on-by-default
diagnostic `-Wdangling`. I have added a new category for this specific
diagnostic so that people can temporarily disable it if their codebase
is not yet clean.

This is the first step to address #63310, focusing only on pointer
types. Support for C++ assignment operators will come in a follow-up
patch.

Fixes #54492


  Commit: c36b4248286c4546df0c0e93137a340facc75e17
      https://github.com/llvm/llvm-project/commit/c36b4248286c4546df0c0e93137a340facc75e17
  Author: Bimo <rui.xu at intel.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M mlir/lib/Bindings/Python/IRAttributes.cpp
    M mlir/test/python/ir/attributes.py

  Log Message:
  -----------
  [MLIR][Python] add value attr for PyAffineMapAttribute (#97254)

Similar to other attributes in Binding, the `PyAffineMapAttribute`
should include a value attribute to enable users to directly retrieve
the `AffineMap` from the `AffineMapAttr`.


  Commit: 51797a7c55c42a2a49b9210b150e0eb63c7975f0
      https://github.com/llvm/llvm-project/commit/51797a7c55c42a2a49b9210b150e0eb63c7975f0
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M clang/lib/Sema/SemaOpenMP.cpp

  Log Message:
  -----------
  [clang][OpenMP] Unindent `checkNestingOfRegions`, NFC

The entire body of the function is inside of an if-statement, followed
by a "return false". Invert the condition and return early, unindent
and clang-format the function.


  Commit: e8574e8ada76e38fab951969dc1c97eef5b0cc60
      https://github.com/llvm/llvm-project/commit/e8574e8ada76e38fab951969dc1c97eef5b0cc60
  Author: vporpo <vporpodas at google.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR] Boilerplate code (#95814)

This is the first patch in a series of patches for the Sandbox Vectorizer project.  
SandboxIR is not tightly coupled to the Sandbox Vectorizer and could be used
independently as a transactional layer on top of LLVM IR.

For a detailed description of the project please refer to the RFC:
https://discourse.llvm.org/t/rfc-sandbox-vectorizer-an-experimental-modular-vectorizer/79059

This patch adds some basic boilerplate code for the SandboxIR which includes
parts of the SandboxIR `Value`, `User` and `Context` classes.


  Commit: 05d8ea77c9bbdedc462dadfdcc41332253c1c829
      https://github.com/llvm/llvm-project/commit/05d8ea77c9bbdedc462dadfdcc41332253c1c829
  Author: smanna12 <soumi.manna at intel.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

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

  Log Message:
  -----------
  [Clang] Prevent null pointer dereferences in SVE tuple functions (#94267)

This patch 

addresses a null pointer dereference issue reported by static analyzer
tool in the
`EmitSVETupleSetOrGet()` and `EmitSVETupleCreate()` functions.
Previously, the function
assumed that the result of `dyn_cast<>` to `ScalableVectorType` would
always be non-null,
    which is not guaranteed.

The fix introduces a null check after the `dyn_cast<>` operation. If the
cast fails and
`SingleVecTy` is null, the function now returns `nullptr` to indicate an
error. This prevents the
  dereference of a null pointer, which could lead to undefined behavior.

Additionally, the assert message has been corrected to accurately
reflect the expected
   conditions.

These changes collectively enhance the robustness of the code by
ensuring type safety and preventing runtime errors due to improper type
casting.


  Commit: 2f4f43c06b8e6d8488f217a3364c36409c348b83
      https://github.com/llvm/llvm-project/commit/2f4f43c06b8e6d8488f217a3364c36409c348b83
  Author: Vasileios Porpodas <vporpodas at google.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

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

  Log Message:
  -----------
  Revert "[SandboxIR] Boilerplate code (#95814)"

This reverts commit e8574e8ada76e38fab951969dc1c97eef5b0cc60.


  Commit: a8e1c3e1239604ac787b6a2d39b5278ddec8aa8a
      https://github.com/llvm/llvm-project/commit/a8e1c3e1239604ac787b6a2d39b5278ddec8aa8a
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/pr38697.ll

  Log Message:
  -----------
  [test] Autogenerate a test in advance of an upcoming change


  Commit: f903e3ec77d6de310d8bf7453b1106adb2d2becd
      https://github.com/llvm/llvm-project/commit/f903e3ec77d6de310d8bf7453b1106adb2d2becd
  Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
    M llvm/test/CodeGen/AMDGPU/sdwa-preserve.mir

  Log Message:
  -----------
  [AMDGPU] Reset kill flags for multiple uses of SDWAInst Ops

Change-Id: I8b56d86a55c397623567945a87ad2f55749680bc


  Commit: 46f42d4db91ea89046981010aebbe501eae5db74
      https://github.com/llvm/llvm-project/commit/46f42d4db91ea89046981010aebbe501eae5db74
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/pr38697.ll

  Log Message:
  -----------
  Revert "[test] Autogenerate a test in advance of an upcoming change"

This reverts commit a8e1c3e1239604ac787b6a2d39b5278ddec8aa8a.  Appears
to be causing at least one bot failure.


  Commit: becc238f77ee2b95b5cdfc2d060fe6ff5b6e447d
      https://github.com/llvm/llvm-project/commit/becc238f77ee2b95b5cdfc2d060fe6ff5b6e447d
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M mlir/docs/Tutorials/DataFlowAnalysis.md

  Log Message:
  -----------
  [mlir][docs] Fix mistakes in data flow analysis code example (#97286)


  Commit: cf9b77a636e0e92b1f4cafd99aaff394f4773f08
      https://github.com/llvm/llvm-project/commit/cf9b77a636e0e92b1f4cafd99aaff394f4773f08
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/Bufferization/Transforms/OneShotAnalysis.cpp
    M mlir/test/Dialect/Linalg/one-shot-bufferize-analysis.mlir

  Log Message:
  -----------
  [mlir][bufferization] Fix bug in bufferization of elementwise ops (#97209)

There is an optimization in One-Shot Bufferize wrt. ops that bufferize
to elementwise access. A copy can sometimes be avoided. E.g.:
```
%0 = tensor.empty()
%1 = tensor.fill ...
%2 = linalg.map ins(%1, ...) outs(%1)
```

In the above example, a buffer copy is not needed for %1, even though
the same buffer is read/written by two different operands (of the same
op). That's because the op bufferizes to elementwise access.

```c++
// Two equivalent operands of the same op are not conflicting if the op
// bufferizes to element-wise access. I.e., all loads at a position
// happen before all stores to the same position.
```

This optimization cannot be applied when op dominance cannot be used to
rule out conflicts. E.g., when the `linalg.map` is inside of a loop. In
such a case, the reads/writes happen multiple times and it is not
guaranteed that "all loads at a position happen before all stores to the
same position."

Fixes #90019.


  Commit: 163d00c666f8fc8cb49ed07b2ad86e34ec2646e6
      https://github.com/llvm/llvm-project/commit/163d00c666f8fc8cb49ed07b2ad86e34ec2646e6
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

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

  Log Message:
  -----------
  [DAG] Pull out repeated SDLoc in SELECT/SETCC folds. NFC.


  Commit: babd62092f78875868fd131b49bf0530a2b92913
      https://github.com/llvm/llvm-project/commit/babd62092f78875868fd131b49bf0530a2b92913
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    A llvm/test/Transforms/InstCombine/X86/x86-vpermi2.ll

  Log Message:
  -----------
  [InstCombine][X86] Add tests showing failure to convert constant avx512 vpermi2 masks to generic shuffles


  Commit: 8036878643b0a7d94393b220cbe8bba488d50863
      https://github.com/llvm/llvm-project/commit/8036878643b0a7d94393b220cbe8bba488d50863
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86InstCombineIntrinsic.cpp
    M llvm/test/Transforms/InstCombine/X86/x86-vpermi2.ll

  Log Message:
  -----------
  [InstCombine][X86] Fold avx512 vpermi2 intrinsics with constant masks to generic shuffles

Similar to most other x86 shuffles, if the shuffle mask is constant then convert to a generic shuffle


  Commit: 23e62243746a1c43e4e6251fcab178498afc3426
      https://github.com/llvm/llvm-project/commit/23e62243746a1c43e4e6251fcab178498afc3426
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCAssembler.h
    M llvm/include/llvm/MC/MCMachObjectWriter.h
    M llvm/include/llvm/MC/MCObjectWriter.h
    M llvm/lib/MC/ELFObjectWriter.cpp
    M llvm/lib/MC/GOFFObjectWriter.cpp
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCDXContainerWriter.cpp
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/MC/SPIRVObjectWriter.cpp
    M llvm/lib/MC/WasmObjectWriter.cpp
    M llvm/lib/MC/WinCOFFObjectWriter.cpp
    M llvm/lib/MC/XCOFFObjectWriter.cpp
    M llvm/tools/dsymutil/MachOUtils.cpp

  Log Message:
  -----------
  [MC] Remove the MCAsmLayout parameter from MCObjectWriter::{writeObject,writeSectionData}


  Commit: 946f5d111d5e3cb19055dc78959d9ee5a19c163a
      https://github.com/llvm/llvm-project/commit/946f5d111d5e3cb19055dc78959d9ee5a19c163a
  Author: dhruvachak <Dhruva.Chakrabarti at amd.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M offload/test/ompt/veccopy_no_device_init.c
    M openmp/runtime/src/ompt-general.cpp

  Log Message:
  -----------
  [OpenMP] [OMPT] Callback registration should not depend on the device init callback. (#96371)

Even if the device init callback is not registered, a tool should be
allowed to register other callbacks.


  Commit: 29cdc8f9ca58411992d3fa5afd89e0628df24679
      https://github.com/llvm/llvm-project/commit/29cdc8f9ca58411992d3fa5afd89e0628df24679
  Author: Leandro Lupori <leandro.lupori at linaro.org>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M flang/lib/Lower/Bridge.cpp
    A flang/test/Lower/OpenMP/task2.f90

  Log Message:
  -----------
  [flang][OpenMP] Fix nested privatization of allocatable (#96968)

In nested constructs where a given variable is privatized more than
once, using the default clause, the innermost host association symbol
will point to the previous host association symbol.
Such symbol lacks the allocatable attribute and can't be used to
generate the type of the symbol to be cloned. Use the ultimate
symbol instead.

Fixes #85594, #80398


  Commit: dce1828683458351b2f66b8758f85415fe3f5a64
      https://github.com/llvm/llvm-project/commit/dce1828683458351b2f66b8758f85415fe3f5a64
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/lib/MC/ELFObjectWriter.cpp

  Log Message:
  -----------
  [MC] Remove the MCAsmLayout parameter from ELFObjectWriter


  Commit: 8e8c455a0660576f170b4c00f3707d179b6bc82a
      https://github.com/llvm/llvm-project/commit/8e8c455a0660576f170b4c00f3707d179b6bc82a
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/lib/MC/ELFObjectWriter.cpp

  Log Message:
  -----------
  ELFObjectWriter: Use DenseMap+SmallVector. NFC


  Commit: 7926c0b594203ca1efe3d2a73a3f4066363bac5a
      https://github.com/llvm/llvm-project/commit/7926c0b594203ca1efe3d2a73a3f4066363bac5a
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M clang/lib/Sema/SemaLambda.cpp

  Log Message:
  -----------
  [Sema] Fix -Wunused-but-set-variable after #94865


  Commit: 1b704e889f09b5dfc0549786542bc6d2cd54e85b
      https://github.com/llvm/llvm-project/commit/1b704e889f09b5dfc0549786542bc6d2cd54e85b
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/DynamicTags.def
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/include/llvm/MC/MCTargetOptions.h
    M llvm/include/llvm/MC/MCTargetOptionsCommandFlags.h
    M llvm/include/llvm/Object/ELF.h
    M llvm/include/llvm/Object/ELFTypes.h
    M llvm/lib/MC/ELFObjectWriter.cpp
    M llvm/lib/MC/MCTargetOptionsCommandFlags.cpp
    M llvm/lib/Object/ELF.cpp
    M llvm/lib/ObjectYAML/ELFEmitter.cpp
    M llvm/lib/ObjectYAML/ELFYAML.cpp
    A llvm/test/MC/ELF/crel-32.s
    A llvm/test/MC/ELF/crel.s
    A llvm/test/tools/llvm-readobj/ELF/crel.test
    M llvm/test/tools/llvm-readobj/ELF/dynamic-reloc.test
    M llvm/test/tools/llvm-readobj/ELF/dynamic-tags.test
    M llvm/test/tools/llvm-readobj/ELF/relocation-errors.test
    M llvm/test/tools/llvm-readobj/ELF/section-types.test
    M llvm/test/tools/yaml2obj/ELF/dynamic-relocations.yaml
    M llvm/test/tools/yaml2obj/ELF/reloc-sec-entry-size.yaml
    A llvm/test/tools/yaml2obj/ELF/relocation-crel.yaml
    M llvm/test/tools/yaml2obj/ELF/relocation-missing-symbol.yaml
    M llvm/test/tools/yaml2obj/ELF/relocation-type.yaml
    M llvm/tools/llvm-readobj/ELFDumper.cpp

  Log Message:
  -----------
  [MC,llvm-readobj,yaml2obj] Support CREL relocation format

CREL is a compact relocation format for the ELF object file format.

This patch adds integrated assembler support (using the RELA form)
available with `llvm-mc -filetype=obj -crel a.s -o a.o`.
A dependent patch will add `clang -c -Wa,--crel,--allow-experimental-crel`.

Also add llvm-readobj support (for both REL and RELA forms) to
facilitate testing the assembler. Additionally, yaml2obj gains support
for the RELA form to aid testing with llvm-readobj.

We temporarily assign the section type code 0x40000020 from the generic
range to `SHT_CREL`. We avoided using `SHT_LLVM_` or `SHT_GNU_` to
avoid code churn and maintain broader applicability for interested psABIs.
Similarly, `DT_CREL` is temporarily 0x40000026.

LLVM will change the code and break compatibility. This is not an issue
if all relocatable files using CREL are regenerated (aka no prebuilt
relocatable files).

Link: https://discourse.llvm.org/t/rfc-crel-a-compact-relocation-format-for-elf/77600

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


  Commit: 9f3bfbb680e6cef9c5b902dac4ad541b99e1ea6a
      https://github.com/llvm/llvm-project/commit/9f3bfbb680e6cef9c5b902dac4ad541b99e1ea6a
  Author: Jerry Zhang Jian <jerry.zhangjian at sifive.com>
  Date:   2024-07-02 (Tue, 02 Jul 2024)

  Changed paths:
    M cmake/Modules/CMakePolicy.cmake

  Log Message:
  -----------
  [CMake] enable CMP0144 policy if available (#96589)

- Enable CMP0144 policy if available, this will make the find_package()
more robust.

Signed-off-by: Jerry Zhang Jian <jerry.zhangjian at sifive.com>


  Commit: 75ec24e875762f038bf490d6e3fa5d4743d7afd1
      https://github.com/llvm/llvm-project/commit/75ec24e875762f038bf490d6e3fa5d4743d7afd1
  Author: Xiang Li <python3kgae at outlook.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/dxc_fcgl.hlsl

  Log Message:
  -----------
  [HLSL][clang][Driver] Fix error when using the option -fcgl in --driver-mode=dxc. (#97001)

When -fcgl is set in --driver-mode=dxc, both -S and -emit-llvm are
currently enabled.

This results in the following error:
```
  error: '-S' action ignored; '-emit-llvm' action specified previously.
```
This change fixes the issue by not rendering -S in RenderHLSLOptions.

Additionally, a test has been added to ensure that enabling -fcgl does
not trigger any diagnostics

Fixes #97296


  Commit: 6b707a8cc143f094b02393f4faf89025c64520bb
      https://github.com/llvm/llvm-project/commit/6b707a8cc143f094b02393f4faf89025c64520bb
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCMachObjectWriter.h
    M llvm/include/llvm/MC/MCObjectWriter.h
    M llvm/lib/MC/ELFObjectWriter.cpp
    M llvm/lib/MC/GOFFObjectWriter.cpp
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCDXContainerWriter.cpp
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/MC/SPIRVObjectWriter.cpp
    M llvm/lib/MC/WasmObjectWriter.cpp
    M llvm/lib/MC/WinCOFFObjectWriter.cpp
    M llvm/lib/MC/XCOFFObjectWriter.cpp

  Log Message:
  -----------
  [MC] Remove the MCAsmLayout parameter from MCObjectWriter::executePostLayoutBinding


  Commit: f9efc295089217425d8220af892dcc5ede9eb9f7
      https://github.com/llvm/llvm-project/commit/f9efc295089217425d8220af892dcc5ede9eb9f7
  Author: Vasileios Porpodas <vporpodas at google.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

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

  Log Message:
  -----------
  Reapply "[SandboxIR] Boilerplate code (#95814)"

This reverts commit 2f4f43c06b8e6d8488f217a3364c36409c348b83.


  Commit: bae2c54912f8984d4d440f910744caa0b991086c
      https://github.com/llvm/llvm-project/commit/bae2c54912f8984d4d440f910744caa0b991086c
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaAccess.cpp
    M clang/lib/Sema/SemaAttr.cpp
    M clang/lib/Sema/SemaCXXScopeSpec.cpp
    M clang/lib/Sema/SemaCast.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExceptionSpec.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaExprMember.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/Sema/SemaModule.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaStmt.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/lib/Sema/SemaType.cpp

  Log Message:
  -----------
  [clang][NFC] Move documentation of `Sema` functions into `Sema.h`

This patch moves documentation of `Sema` functions from `.cpp` files to `Sema.h` when there was no documentation in the latter, or it can be trivially subsumed. More complicated cases when there's less trivial divergence between documentation attached to declaration and the one attached to implementation are left for a later PR that would require review.

It appears that doxygen can find the documentation for a function defined out-of-line even if it's attached to an implementation, and not declaration. But other tools, e.g. clangd, are not as powerful. So this patch significantly improves autocompletion experience for (at least) clangd-based IDEs.


  Commit: a5e905b73d4aec4365a63040338cb02118ae80e5
      https://github.com/llvm/llvm-project/commit/a5e905b73d4aec4365a63040338cb02118ae80e5
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmLayout.h
    M llvm/include/llvm/MC/MCMachObjectWriter.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp

  Log Message:
  -----------
  [MC] Remove MCAsmLayout::getFragmentAddress


  Commit: 1c0e7221ce35e4b709951c06c67aeb1ed3205f27
      https://github.com/llvm/llvm-project/commit/1c0e7221ce35e4b709951c06c67aeb1ed3205f27
  Author: smanna12 <soumi.manna at intel.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M clang/lib/Sema/SemaAvailability.cpp

  Log Message:
  -----------
  [Clang] Prevent null pointer dereference in DiagnoseDeclAvailability() (#97095)

This patch adds an assertion in the DiagnoseDeclAvailabilit() function
to ensure that the expected availability attribute is not null before
they are passed to hasMatchingEnvironmentOrNone() to prevent potential
null pointer dereferences and improve the robustness of the availability
diagnostics process.


  Commit: 15ca5a8cdb7a4131b891cec73333e9ebb7ed3d04
      https://github.com/llvm/llvm-project/commit/15ca5a8cdb7a4131b891cec73333e9ebb7ed3d04
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

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

  Log Message:
  -----------
  [MC] Remove MCAsmLayout::getFragmentAddress


  Commit: 658c03d5879fb78c8d6e0e43b97bc0e0027826d5
      https://github.com/llvm/llvm-project/commit/658c03d5879fb78c8d6e0e43b97bc0e0027826d5
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmBackend.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.h

  Log Message:
  -----------
  [MC] Remove the MCAsmLayout parameter from evaluateTargetFixup


  Commit: d3e7c4ce7a3d7f08cea02cba8f34c590a349688b
      https://github.com/llvm/llvm-project/commit/d3e7c4ce7a3d7f08cea02cba8f34c590a349688b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pown.ll
    M llvm/test/CodeGen/AMDGPU/simplify-libcalls.ll

  Log Message:
  -----------
  AMDGPU: Use real copysign in fast pow (#97152)

Previously this would introduce some codegen regressions, but
those have been avoided by simplifying demanded bits on copysign
operations.


  Commit: 7888d66af20b0c34c78ba94613e4a45e3a7285c2
      https://github.com/llvm/llvm-project/commit/7888d66af20b0c34c78ba94613e4a45e3a7285c2
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M clang/www/c_status.html

  Log Message:
  -----------
  [C2y] Add C2y documents to the tracking page

These documents were adopted in the past two meetings; the current
working draft doesn't yet incorporate them however.


  Commit: 71ff749d6b9aee70c6d26d9781b9f70bf6a8c445
      https://github.com/llvm/llvm-project/commit/71ff749d6b9aee70c6d26d9781b9f70bf6a8c445
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaExpr.cpp
    R clang/test/AST/ast-print-language-linkage.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/NameSearchContext.cpp

  Log Message:
  -----------
  Revert "[clang][AST] fix ast-print of extern <lang> with >=2 declarators"

This reverts commit 48f13d48a88c14acbaea7c3ee05018bb173fb360.

It broke some external bots:
https://green.lab.llvm.org/job/llvm.org/view/LLDB/job/as-lldb-cmake/6805/console
https://logs.chromium.org/logs/fuchsia/buildbucket/cr-buildbucket/8743609724828014497/+/u/clang/build/stdout


  Commit: a40ca78bb926d8c596036fc93b1c6ca7731c795b
      https://github.com/llvm/llvm-project/commit/a40ca78bb926d8c596036fc93b1c6ca7731c795b
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmLayout.h
    M llvm/include/llvm/MC/MCMachObjectWriter.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/MC/WasmObjectWriter.cpp
    M llvm/lib/MC/WinCOFFObjectWriter.cpp
    M llvm/lib/MC/XCOFFObjectWriter.cpp
    M llvm/tools/dsymutil/MachOUtils.cpp

  Log Message:
  -----------
  [MC] Remove MCAsmLayout::{getSectionFileSize,getSectionAddressSize}


  Commit: 0323d8d83ccad9a74df36d2662e96aa0f56e3060
      https://github.com/llvm/llvm-project/commit/0323d8d83ccad9a74df36d2662e96aa0f56e3060
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M lldb/tools/lldb-dap/package.json

  Log Message:
  -----------
  [lldb-dap] Bump the version to 0.2.2

Bump the lldb-dap version to 0.2.2.


  Commit: dbf12b2f778a94bff323bbc4777673f66a1cf3e9
      https://github.com/llvm/llvm-project/commit/dbf12b2f778a94bff323bbc4777673f66a1cf3e9
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    M llvm/include/llvm/MC/MCAsmLayout.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCExpr.cpp
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/MC/WasmObjectWriter.cpp
    M llvm/lib/MC/WinCOFFObjectWriter.cpp
    M llvm/lib/MC/XCOFFObjectWriter.cpp

  Log Message:
  -----------
  [MC] Remove MCAsmLayout::{getSymbolOffset,getBaseSymbol}

The MCAsmLayout::* forwarders added by
67957a45ee1ec42ae1671cdbfa0d73127346cc95 have all been removed.


  Commit: 8477ca6e8e2a2c5adcfd600780a5eecb2ca0b153
      https://github.com/llvm/llvm-project/commit/8477ca6e8e2a2c5adcfd600780a5eecb2ca0b153
  Author: Raymond Tian <rymdtian at gmail.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M clang/lib/Sema/SemaExpr.cpp
    A clang/test/SemaCUDA/amdgpu-builtins-pointer-args.cu

  Log Message:
  -----------
  [HIP][Clang][Sema] Fix crash when calling builtins with pointer arguments (#95957)

Crashed when the number of args passed was less than number of
parameters in builtin definition, because we were indexing the list of
args while iterating through the entire number of parameters.


  Commit: bff619f91015a633df659d7f60f842d5c49351df
      https://github.com/llvm/llvm-project/commit/bff619f91015a633df659d7f60f842d5c49351df
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pown.ll
    M llvm/test/CodeGen/AMDGPU/simplify-libcalls.ll

  Log Message:
  -----------
  Revert "AMDGPU: Use real copysign in fast pow (#97152)"

This reverts commit d3e7c4ce7a3d7f08cea02cba8f34c590a349688b.


  Commit: eed914164009a03f584c2fed39bc5edb58d77763
      https://github.com/llvm/llvm-project/commit/eed914164009a03f584c2fed39bc5edb58d77763
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/lib/DebugInfo/DWARF/DWARFTypePrinter.cpp
    A llvm/test/tools/llvm-dwarfdump/AArch64/template_ref_ptr.ll

  Log Message:
  -----------
  [DebugInfo] Skip both pointer and reference type parameters (#97094)

DWARFTypePrinter::appendTemplateParameters already skips pointer type
parameters but didn't account for reference type parameters. This would
result in tripping up the RawName assertion below. This updates the
check for both `DW_TAG_pointer_type` and `DW_TAG_reference_type`.

Thanks to Dave Blaikie for helping with the test.

rdar://130297520


  Commit: 2c1fb411ce3aed148a278660d215e0f88ff9b9be
      https://github.com/llvm/llvm-project/commit/2c1fb411ce3aed148a278660d215e0f88ff9b9be
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp

  Log Message:
  -----------
  [MC] Remove some getSectionOrder uses

SectionOrder is Mach-O specific to place zerofill sections after
non-zerofill sections in the object writer.


  Commit: 95e823e88982127666eec76e79143f2857daa2ad
      https://github.com/llvm/llvm-project/commit/95e823e88982127666eec76e79143f2857daa2ad
  Author: Anders Schau Knatten <anders at knatten.org>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-type-member-init.rst
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-member-init.cpp

  Log Message:
  -----------
  [clang-tidy]: Use correct term for user-provided constructor (#96617)

First of all, fix a confusion in the documentation for
pro-type-member-init which used the wrong term for a user-provided
constructor. (In the corresponding comment in ProTypeMemberInitCheck.h,
which was added in the same commit that added this documentation, we
already use the correct term).

Second, also fix a comment in the corresponding test that had the same
mistake.

https://timsong-cpp.github.io/cppwp/std23/dcl.fct.def.default#5:

> A function is user-provided if it is user-declared and not explicitly
> defaulted or deleted on its first declaration.

("user-defined constructor" is not a thing in the standard)


  Commit: e47359a925b88cd081ea85d10b55b0625d17b212
      https://github.com/llvm/llvm-project/commit/e47359a925b88cd081ea85d10b55b0625d17b212
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    A llvm/test/Transforms/Inline/byval-with-non-alloca-addrspace.ll

  Log Message:
  -----------
  Inline: Fix handling of byval using non-alloca addrspace (#97306)

Use the address space of the original pointer argument instead
of querying the datalayout. This avoids producing a verifier error
since this was changing the address space for the user instructions.

Fixes #97086


  Commit: 9a4f57ec1e6e08db201d42137552b6d97c6d4d25
      https://github.com/llvm/llvm-project/commit/9a4f57ec1e6e08db201d42137552b6d97c6d4d25
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    A llvm/test/CodeGen/AMDGPU/no-corresponding-integer-type.ll

  Log Message:
  -----------
  [SelectionDAG] Use `EVT::getIntegerVT` in `getBitcastedAnyExtOrTrunc` (#96658)

`SelectionDAG::getBitcastedAnyExtOrTrunc` assumes that there is always a
valid
integer type corresponding to another type, which is not always true
when it
comes to vector type. For example, `<3 x i8>` doesn't have a
corresponding
integer type.

Fix SWDEV-464698.


  Commit: 7c50187b7d7a977144372ceff306d21d71e22e26
      https://github.com/llvm/llvm-project/commit/7c50187b7d7a977144372ceff306d21d71e22e26
  Author: Pascal Jungblut <github at pascalj.de>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidNonConstGlobalVariablesCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidNonConstGlobalVariablesCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/avoid-non-const-global-variables.rst
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/avoid-non-const-global-variables.cpp

  Log Message:
  -----------
  [clang-tidy] Option to ignore anonymous namespaces in avoid-non-const-global-variables (#93827)

Add an option to ignore warnings for cppcoreguidelines
avoid-non-const-global-variables.

Understandably, the core guidelines discourage non const global
variables, even at the TU level (see
https://github.com/isocpp/CppCoreGuidelines/issues/2195). However,
having a small TU with an interface that uses a non const variable from
an anonymous namespace can be a valid choice.

This adds an option that disables the warning just for anonymous
namespaces, i.e. at the file level. The default is still to show a
warning, just as before.


  Commit: 668ee3f5478c1e1b549923667cf1b8704b1a0bd0
      https://github.com/llvm/llvm-project/commit/668ee3f5478c1e1b549923667cf1b8704b1a0bd0
  Author: Xing Xue <xingxue at outlook.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/unittests/StaticAnalyzer/CallEventTest.cpp

  Log Message:
  -----------
  [clang] Default to -fno-sized-deallocation for AIX (#97076)

Some `libc++` LIT test cases and user code define their own version of
`operator delete` that are not sized. With `-fno-sized-deallocation`,
destructors call the non-sized `operator delete` and it will be resolved
to the user defined version. However, with `-fsized-deallocation`,
destructors will call the sized `operator delete` which will be resolved
to the weak definition in `libc++abi` because the user code does not
define the corresponding sized version. The `libc++abi` sized `operator
delete` in turn calls the non-sized version of `operator delete` of the
same shared object inside `libc++abi` instead of the user defined
version on AIX because runtime linking is not the default for AIX and
therefore, fails the tests or user code. This patch sets
`-fno-sized-deallocation` as the default for AIX if neither
`-fsize-deallocation` nor `-fno-sized-deallocation` is explicitly set,
similar to what is done for ZOS.


  Commit: dd5df27d9c6b47793b72d4c8f2a796e5d8dc343d
      https://github.com/llvm/llvm-project/commit/dd5df27d9c6b47793b72d4c8f2a796e5d8dc343d
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M lldb/include/lldb/Utility/SupportFile.h
    M lldb/source/Breakpoint/BreakpointResolver.cpp
    M lldb/source/Commands/CommandObjectSource.cpp
    M lldb/source/Symbol/LineEntry.cpp
    M lldb/source/Symbol/LineTable.cpp
    M lldb/source/Target/ThreadPlanStepOverRange.cpp
    M lldb/source/Target/ThreadPlanStepRange.cpp
    M lldb/unittests/Utility/CMakeLists.txt
    A lldb/unittests/Utility/SupportFileTest.cpp

  Log Message:
  -----------
  [lldb] Make semantics of SupportFile equivalence explicit (#97126)

This is an improved attempt to improve the semantics of SupportFile
equivalence, taking into account the feedback from #95606.

Pavel's comment about the lack of a concise name because the concept
isn't trivial made me realize that I don't want to abstract this concept
away behind a helper function. Instead, I opted for a rather verbose
enum that forces the caller to consider exactly what kind of comparison
is appropriate for every call.


  Commit: ae6549a7d98f848f8b17d709471665c84e5108d5
      https://github.com/llvm/llvm-project/commit/ae6549a7d98f848f8b17d709471665c84e5108d5
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll

  Log Message:
  -----------
  [RISCV] Add build vector coverage for rva22u + V


  Commit: 7e6e4986e64e8528c149d3ba90188248e2f2013c
      https://github.com/llvm/llvm-project/commit/7e6e4986e64e8528c149d3ba90188248e2f2013c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-load-store-asm.ll

  Log Message:
  -----------
  [RISCV] Use EXTLOAD instead of ZEXTLOAD when lowering riscv_masked_strided_load with zero stride. (#97317)

The splat we generate after the load doesn't use the extended bits, so it
shouldn't matter which extend type we use.

EXTLOAD is lowered as SEXTLOAD on every element type except i8.


  Commit: 81f4fb65d891902045b795341b3a263abb19d227
      https://github.com/llvm/llvm-project/commit/81f4fb65d891902045b795341b3a263abb19d227
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

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

  Log Message:
  -----------
  [MLInliner] Simplify NodeCount bookkeeping (#96576)

Rather than doing delta counting of the total number of functions, just
increment it when we see a new function.


  Commit: 7840c0066837797cdeb62aab63044b964aa7f372
      https://github.com/llvm/llvm-project/commit/7840c0066837797cdeb62aab63044b964aa7f372
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmLayout.h
    M llvm/include/llvm/MC/MCMachObjectWriter.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/tools/dsymutil/MachOUtils.cpp

  Log Message:
  -----------
  [MC] Move MCAsmLayout::SectionOrder to MachObjectWriter::SectionOrder

Follow-up to 2c1fb411ce3aed148a278660d215e0f88ff9b9be.

SectionOrder is Mach-O specific to place zerofill sections after
non-zerofill sections in the object writer.


  Commit: ea93c538c78ed191f83026d372bd71dd4a135cbc
      https://github.com/llvm/llvm-project/commit/ea93c538c78ed191f83026d372bd71dd4a135cbc
  Author: Hendrik Hübner <117831077+HendrikHuebner at users.noreply.github.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/src/math/CMakeLists.txt
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/range_reduction_fma.h
    M libc/src/math/generic/sincosf_utils.h
    A libc/src/math/generic/sinpif.cpp
    A libc/src/math/sinpif.h
    M libc/test/src/math/CMakeLists.txt
    M libc/test/src/math/exhaustive/CMakeLists.txt
    A libc/test/src/math/exhaustive/sinpif_test.cpp
    A libc/test/src/math/sinpif_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/sinpif_test.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.h

  Log Message:
  -----------
  [libc][math][c23] Implemented sinpif function correctly rounded for all rounding modes. (#97149)

This implements the sinpif function. An exhaustive test shows it's
correct for all rounding modes.

Issue:  #94895


  Commit: da3e60bbe7b683df43563ae7e5ac4722d1f0bc46
      https://github.com/llvm/llvm-project/commit/da3e60bbe7b683df43563ae7e5ac4722d1f0bc46
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M .github/workflows/issue-write.yml

  Log Message:
  -----------
  [Github] Make issue write workflow only run after success/failure (#97341)

This patch makes the issue write workflow only run after success or
failure of the workflow invoking it, preventing it from running where
the original workflow was skipped.

Fixes #97294


  Commit: 781ba3c6b0bc5e4f6b54b43cce94a4aee175ffc1
      https://github.com/llvm/llvm-project/commit/781ba3c6b0bc5e4f6b54b43cce94a4aee175ffc1
  Author: Muhammad Omair Javaid <omair.javaid at linaro.org>
  Date:   2024-07-02 (Tue, 02 Jul 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py

  Log Message:
  -----------
  [LLDB] Fix TestGdbRemoteConnection.py on Windows

This fixes TestGdbRemoteConnection.py failing after PR #91570 on
AArch64 Windows LLDB buildbot.

https://lab.llvm.org/buildbot/#/builders/141/builds/376


  Commit: deda50fd7942014d9e51b2e12aaa5362b147befa
      https://github.com/llvm/llvm-project/commit/deda50fd7942014d9e51b2e12aaa5362b147befa
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/OpenMPKinds.h
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/Sema/SemaOpenMP.cpp

  Log Message:
  -----------
  [clang][OpenMP] Implement `isOpenMPCapturingDirective` (#97090)

Check if the given directive can capture variables, and thus needs a
captured statement.

Simplify some code using this function.


  Commit: 88c0a8258800bbc72e7c0b0586436d4a1c62a260
      https://github.com/llvm/llvm-project/commit/88c0a8258800bbc72e7c0b0586436d4a1c62a260
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmBackend.h
    M llvm/lib/Target/AVR/MCTargetDesc/AVRAsmBackend.h
    M llvm/lib/Target/BPF/MCTargetDesc/BPFAsmBackend.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.h
    M llvm/lib/Target/MSP430/MCTargetDesc/MSP430AsmBackend.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.h
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmBackend.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyAsmBackend.cpp
    M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaAsmBackend.cpp

  Log Message:
  -----------
  [MC] Make MCAsmBackend::fixupNeedsRelaxation not pure virtual

This hook only needs to be implemented if mayNeedRelaxation may return
true.


  Commit: 6e93e37fe917833ad2d4d09ceda150ffe755b03e
      https://github.com/llvm/llvm-project/commit/6e93e37fe917833ad2d4d09ceda150ffe755b03e
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/MCTargetDesc/DirectXMCTargetDesc.cpp
    M llvm/lib/Target/Lanai/MCTargetDesc/LanaiAsmBackend.cpp
    M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVAsmBackend.cpp
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
    M llvm/lib/Target/VE/MCTargetDesc/VEAsmBackend.cpp

  Log Message:
  -----------
  [MC] Remove unneeded MC*AsmBackend::fixupNeedsRelaxation overrides

Follow-up to 88c0a8258800bbc72e7c0b0586436d4a1c62a260
("[MC] Make MCAsmBackend::fixupNeedsRelaxation not pure virtual").


  Commit: 938cbdb4cf428bf08558c24d845aeac9174c7022
      https://github.com/llvm/llvm-project/commit/938cbdb4cf428bf08558c24d845aeac9174c7022
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/Parser.cpp
    M clang/lib/Sema/SemaModule.cpp
    A clang/test/AST/HLSL/export.hlsl
    A clang/test/CodeGenHLSL/export.hlsl
    A clang/test/SemaHLSL/export.hlsl

  Log Message:
  -----------
  [HLSL] Implement `export` keyword (#96823)

Implements `export` keyword in HLSL.

There are two ways the `export` keyword can be used:
1. On individual function declarations
```
export void f() {}
```
2. On a group of function declaration:
```
export {
   void f1();
   void f2() {}
}
```

Functions declared with the `export` keyword have external linkage. The
implementation does not include validation of when a function can or
cannot be exported, such as when it has resource argument or semantic
annotations. That will be covered by llvm/llvm-project#93330.

Currently all function declarations in global or named namespaces have
external linkage by default so there are no specific code changes
required right now to make sure exported function have external linkage
as well. That will change as part of llvm/llvm-project#92071. Any
additional changes to make sure exported functions still have external
linkage will be done as part of this work item.

Fixes #92812


  Commit: 96783402676dc7dfbd158f1faa8125628a7bfc3d
      https://github.com/llvm/llvm-project/commit/96783402676dc7dfbd158f1faa8125628a7bfc3d
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2024-07-01 (Mon, 01 Jul 2024)

  Changed paths:
    M .github/workflows/issue-write.yml
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidNonConstGlobalVariablesCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidNonConstGlobalVariablesCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/avoid-non-const-global-variables.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-type-member-init.rst
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/avoid-non-const-global-variables.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-member-init.cpp
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/OpenMPKinds.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
    M clang/include/clang/StaticAnalyzer/Core/BugReporter/Z3CrosscheckVisitor.h
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/Parser.cpp
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/lib/Sema/CheckExprLifetime.h
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaAccess.cpp
    M clang/lib/Sema/SemaAttr.cpp
    M clang/lib/Sema/SemaAvailability.cpp
    M clang/lib/Sema/SemaCXXScopeSpec.cpp
    M clang/lib/Sema/SemaCast.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExceptionSpec.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaExprMember.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/Sema/SemaModule.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaStmt.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
    M clang/lib/StaticAnalyzer/Core/Z3CrosscheckVisitor.cpp
    A clang/test/AST/HLSL/export.hlsl
    R clang/test/AST/ast-print-language-linkage.cpp
    M clang/test/Analysis/analyzer-config.c
    M clang/test/Analysis/stream.c
    A clang/test/CodeGenHLSL/export.hlsl
    M clang/test/Driver/dxc_fcgl.hlsl
    M clang/test/Parser/compound_literal.c
    A clang/test/SemaCUDA/amdgpu-builtins-pointer-args.cu
    M clang/test/SemaCXX/attr-lifetimebound.cpp
    M clang/test/SemaCXX/warn-dangling-local.cpp
    A clang/test/SemaHLSL/export.hlsl
    M clang/unittests/StaticAnalyzer/CallEventTest.cpp
    M clang/unittests/StaticAnalyzer/Z3CrosscheckOracleTest.cpp
    M clang/www/c_status.html
    M cmake/Modules/CMakePolicy.cmake
    M flang/lib/Lower/Bridge.cpp
    A flang/test/Lower/OpenMP/task2.f90
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/src/math/CMakeLists.txt
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/range_reduction_fma.h
    M libc/src/math/generic/sincosf_utils.h
    A libc/src/math/generic/sinpif.cpp
    A libc/src/math/sinpif.h
    M libc/test/src/math/CMakeLists.txt
    M libc/test/src/math/exhaustive/CMakeLists.txt
    A libc/test/src/math/exhaustive/sinpif_test.cpp
    A libc/test/src/math/sinpif_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/sinpif_test.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.h
    M lldb/include/lldb/Utility/SupportFile.h
    M lldb/packages/Python/lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py
    M lldb/source/Breakpoint/BreakpointResolver.cpp
    M lldb/source/Commands/CommandObjectSource.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/NameSearchContext.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Symbol/LineEntry.cpp
    M lldb/source/Symbol/LineTable.cpp
    M lldb/source/Target/ThreadPlanStepOverRange.cpp
    M lldb/source/Target/ThreadPlanStepRange.cpp
    M lldb/test/API/lang/cpp/namespace/TestNamespace.py
    M lldb/test/API/lang/cpp/namespace/main.cpp
    M lldb/tools/lldb-dap/package.json
    M lldb/unittests/Utility/CMakeLists.txt
    A lldb/unittests/Utility/SupportFileTest.cpp
    M llvm/include/llvm/BinaryFormat/DynamicTags.def
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/include/llvm/MC/MCAsmBackend.h
    M llvm/include/llvm/MC/MCAsmLayout.h
    M llvm/include/llvm/MC/MCAssembler.h
    M llvm/include/llvm/MC/MCMachObjectWriter.h
    M llvm/include/llvm/MC/MCObjectWriter.h
    M llvm/include/llvm/MC/MCTargetOptions.h
    M llvm/include/llvm/MC/MCTargetOptionsCommandFlags.h
    M llvm/include/llvm/Object/ELF.h
    M llvm/include/llvm/Object/ELFTypes.h
    A llvm/include/llvm/SandboxIR/SandboxIR.h
    A llvm/include/llvm/SandboxIR/SandboxIRValues.def
    M llvm/lib/Analysis/MLInlineAdvisor.cpp
    M llvm/lib/CMakeLists.txt
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFTypePrinter.cpp
    M llvm/lib/MC/ELFObjectWriter.cpp
    M llvm/lib/MC/GOFFObjectWriter.cpp
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCDXContainerWriter.cpp
    M llvm/lib/MC/MCExpr.cpp
    M llvm/lib/MC/MCTargetOptionsCommandFlags.cpp
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/MC/SPIRVObjectWriter.cpp
    M llvm/lib/MC/WasmObjectWriter.cpp
    M llvm/lib/MC/WinCOFFObjectWriter.cpp
    M llvm/lib/MC/XCOFFObjectWriter.cpp
    M llvm/lib/Object/ELF.cpp
    M llvm/lib/ObjectYAML/ELFEmitter.cpp
    M llvm/lib/ObjectYAML/ELFYAML.cpp
    A llvm/lib/SandboxIR/CMakeLists.txt
    A llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
    M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
    M llvm/lib/Target/AVR/MCTargetDesc/AVRAsmBackend.h
    M llvm/lib/Target/BPF/MCTargetDesc/BPFAsmBackend.cpp
    M llvm/lib/Target/DirectX/MCTargetDesc/DirectXMCTargetDesc.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
    M llvm/lib/Target/Lanai/MCTargetDesc/LanaiAsmBackend.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.h
    M llvm/lib/Target/MSP430/MCTargetDesc/MSP430AsmBackend.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.h
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVAsmBackend.cpp
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmBackend.cpp
    M llvm/lib/Target/VE/MCTargetDesc/VEAsmBackend.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyAsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp
    M llvm/lib/Target/X86/X86InstCombineIntrinsic.cpp
    M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaAsmBackend.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    A llvm/test/CodeGen/AMDGPU/no-corresponding-integer-type.ll
    M llvm/test/CodeGen/AMDGPU/sdwa-preserve.mir
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-load-store-asm.ll
    A llvm/test/MC/ELF/crel-32.s
    A llvm/test/MC/ELF/crel.s
    A llvm/test/Transforms/Inline/byval-with-non-alloca-addrspace.ll
    A llvm/test/Transforms/InstCombine/X86/x86-vpermi2.ll
    A llvm/test/tools/llvm-dwarfdump/AArch64/template_ref_ptr.ll
    A llvm/test/tools/llvm-readobj/ELF/crel.test
    M llvm/test/tools/llvm-readobj/ELF/dynamic-reloc.test
    M llvm/test/tools/llvm-readobj/ELF/dynamic-tags.test
    M llvm/test/tools/llvm-readobj/ELF/relocation-errors.test
    M llvm/test/tools/llvm-readobj/ELF/section-types.test
    M llvm/test/tools/yaml2obj/ELF/dynamic-relocations.yaml
    M llvm/test/tools/yaml2obj/ELF/reloc-sec-entry-size.yaml
    A llvm/test/tools/yaml2obj/ELF/relocation-crel.yaml
    M llvm/test/tools/yaml2obj/ELF/relocation-missing-symbol.yaml
    M llvm/test/tools/yaml2obj/ELF/relocation-type.yaml
    M llvm/tools/dsymutil/MachOUtils.cpp
    M llvm/tools/llvm-readobj/ELFDumper.cpp
    M llvm/unittests/CMakeLists.txt
    A llvm/unittests/SandboxIR/CMakeLists.txt
    A llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M mlir/docs/Tutorials/DataFlowAnalysis.md
    M mlir/lib/Bindings/Python/IRAttributes.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/OneShotAnalysis.cpp
    M mlir/test/Dialect/Linalg/one-shot-bufferize-analysis.mlir
    M mlir/test/python/ir/attributes.py
    M offload/test/ompt/veccopy_no_device_init.c
    M openmp/runtime/src/ompt-general.cpp

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

Created using spr 1.3.4

[skip ci]


Compare: https://github.com/llvm/llvm-project/compare/b9180d6b5b7d...96783402676d

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