[all-commits] [llvm/llvm-project] 481eb4: [clang] Enable the -Wdangling-assignment-gsl diagn...

Vitaly Buka via All-commits all-commits at lists.llvm.org
Fri Jul 26 11:37:26 PDT 2024


  Branch: refs/heads/users/vitalybuka/spr/nfcload-find-better-place-for-mustsuppressspeculation
  Home:   https://github.com/llvm/llvm-project
  Commit: 481eb4f5159b753497ef20cb646eb6169f3eb078
      https://github.com/llvm/llvm-project/commit/481eb4f5159b753497ef20cb646eb6169f3eb078
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td

  Log Message:
  -----------
  [clang] Enable the -Wdangling-assignment-gsl diagnostic by default. (#100708)


  Commit: ca69f515fe29fa98b7ab52e49c5b401bb22f64f6
      https://github.com/llvm/llvm-project/commit/ca69f515fe29fa98b7ab52e49c5b401bb22f64f6
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_double.hex.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.hex.pass.cpp
    M libcxx/utils/libcxx/test/features.py
    M libcxxabi/test/test_demangle.pass.cpp

  Log Message:
  -----------
  [libcxx] [test] Detect the UCRT printf("%a") formatting bug (#99846)

This fixes testing with MinGW, if built without
__USE_MINGW_ANSI_STDIO=1.

On x86 MinGW, such a configuration fails printf tests with long doubles
due to mismatches between 80 and 64 bit long doubles - but on ARM,
there's no such issue, so building without __USE_MINGW_ANSI_STDIO=1 is
perfectly valid there.

Add another similar XFAIL to a libcxxabi test; this test isn't executed
in MSVC environments, so no XFAIL has been needed so far.


  Commit: 599a91a7df6b75f93b91507e0caedd8dd1996641
      https://github.com/llvm/llvm-project/commit/599a91a7df6b75f93b91507e0caedd8dd1996641
  Author: Angel Zhang <anzhouzhang913 at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
    M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir

  Log Message:
  -----------
  [mlir][spirv] Support `vector.step` in vector to spirv conversion (#100651)

Added a conversion pattern and LIT tests for lowering `vector.step` to
SPIR-V.
Fixes: #100602

---------

Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>


  Commit: 3e593b9b3b86ebf28e24c3a33791be49e0735af5
      https://github.com/llvm/llvm-project/commit/3e593b9b3b86ebf28e24c3a33791be49e0735af5
  Author: Kendal Harland <3987220+kendalharland at users.noreply.github.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbplatformutil.py
    M lldb/packages/Python/lldbsuite/test/lldbtest.py

  Log Message:
  -----------
  [lldb] Remove python helper getCompilerBinary() (#100660)

This causes a number of tests be `UNRESOLVED` on Windows if
`getCompiler()` has a space in the name, because `getCompilerBinary()`
unconditionally splits on whitespace and returns the first result, which
might just be`"C:\Program"` if using a compiler such as `clang-cl` `cl`
from the absolute path to Visual studio's installation directory.

Co-authored-by: kendal <kendal at thebrowser.company>


  Commit: 60e5892e6928dec29306e5749e70ac9e26e1f6c5
      https://github.com/llvm/llvm-project/commit/60e5892e6928dec29306e5749e70ac9e26e1f6c5
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M .github/workflows/release-asset-audit.yml

  Log Message:
  -----------
  Workflows: Fix copy-paste mistake in release-asset-audit

The comment file in this workflow is plain-text not json.


  Commit: 761372ef1563f9f14f43afd800d4d017a3472c99
      https://github.com/llvm/llvm-project/commit/761372ef1563f9f14f43afd800d4d017a3472c99
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-constant.mir

  Log Message:
  -----------
  AMDGPU/GlobalISel: Add some more select of pointer typed constant tests


  Commit: cc1dfb37aa84d1524243b83fadb8ff0f821e03e9
      https://github.com/llvm/llvm-project/commit/cc1dfb37aa84d1524243b83fadb8ff0f821e03e9
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M libcxx/include/__atomic/atomic_ref.h
    A libcxx/test/std/atomics/atomics.lockfree/is_always_lock_free.cpp
    R libcxx/test/std/atomics/atomics.lockfree/isalwayslockfree.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/is_always_lock_free.pass.cpp
    M libcxx/test/support/atomic_helpers.h

  Log Message:
  -----------
  [libc++] Fix bug in atomic_ref's calculation of lock_free-ness (#99570)

The builtin __atomic_always_lock_free takes into account the type of the
pointer provided as the second argument. Because we were passing void*,
rather than T*, the calculation failed. This meant that
atomic_ref<T>::is_always_lock_free was only true for char & bool.

This bug exists elsewhere in the atomic library (when using GCC, we fail
to pass a pointer at all, and we fail to correctly align the atomic like
_Atomic would).

This change also attempts to start sorting out testing difficulties with
this function that caused the bug to exist by using the 
__GCC_ATOMIC_(CHAR|SHORT|INT|LONG|LLONG|POINTER)_IS_LOCK_FREE predefined
macros to establish an expected value for `is_always_lock_free` and 
`is_lock_free` for the respective types, as well as types with matching 
sizes and compatible alignment values.

Using these compiler pre-defines we can actually validate that certain
types, like char and int, are actually always lock free like they are on
every platform in the wild.

Note that this patch was actually authored by Eric Fiselier but I picked 
up the patch and GitHub won't let me set Eric as the primary author.

Co-authored-by: Eric Fiselier <eric at efcs.ca>


  Commit: 372a6beac65851abe6d8016df397f5cea32ffe9b
      https://github.com/llvm/llvm-project/commit/372a6beac65851abe6d8016df397f5cea32ffe9b
  Author: vporpo <vporpodas at google.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement CallBase and CallInst (#100218)

This patch adds the `CallBase` SandboxIR class and its subclass:
`CallInst`. Both are mirrors of `llvm::CallBase` and `llvm::CallInst`
respectively. Since `llvm::CallBase` contains a large number of member
functions so this patch implements only some of them.

The `CallBase` unit tests uncovered an issue with the class hierarchy,
where `sandboxir::Function` was not a subclass of `sandboxir::Constant`,
so this was fixed.

Testing tracking of the `CallBase` setters showed that
`sandboxir::Use::set()` was not being tracked. So this is also part of
this patch.


  Commit: f8cd4c505fd9c0be329630b6b82e3a3ff53107cc
      https://github.com/llvm/llvm-project/commit/f8cd4c505fd9c0be329630b6b82e3a3ff53107cc
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M libc/cmake/modules/LLVMLibCLibraryRules.cmake
    M libc/cmake/modules/prepare_libc_gpu_build.cmake
    M libc/lib/CMakeLists.txt

  Log Message:
  -----------
  [libc] Fix building bitcode library for GPU (#100491)

Summary:
The GPU build provides a bitcode version of the library to mimic how
NVIDIA and AMD provide their libraries. Previously we had the fatbinary
archive that created the necessary dependency for this to actually
build. Since it was removed we no longer had anything triggering this to
build.

I have no idea if there's a better way to force a custom command to
actually be run in the same space as libraries, but the only thing I
could come up with was a dummy target.


  Commit: f87cf049793fb87ce5dc4e4d732194ad72268332
      https://github.com/llvm/llvm-project/commit/f87cf049793fb87ce5dc4e4d732194ad72268332
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M .github/workflows/release-asset-audit.yml
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M libc/cmake/modules/LLVMLibCLibraryRules.cmake
    M libc/cmake/modules/prepare_libc_gpu_build.cmake
    M libc/lib/CMakeLists.txt
    M libcxx/include/__atomic/atomic_ref.h
    A libcxx/test/std/atomics/atomics.lockfree/is_always_lock_free.cpp
    R libcxx/test/std/atomics/atomics.lockfree/isalwayslockfree.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/is_always_lock_free.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_double.hex.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.hex.pass.cpp
    M libcxx/test/support/atomic_helpers.h
    M libcxx/utils/libcxx/test/features.py
    M libcxxabi/test/test_demangle.pass.cpp
    M lldb/packages/Python/lldbsuite/test/lldbplatformutil.py
    M lldb/packages/Python/lldbsuite/test/lldbtest.py
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/SandboxIRValues.def
    M llvm/include/llvm/SandboxIR/Use.h
    M llvm/lib/Analysis/Loads.cpp
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-constant.mir
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp
    M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
    M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir

  Log Message:
  -----------
  fixup

Created using spr 1.3.4


Compare: https://github.com/llvm/llvm-project/compare/7fea374716dc...f87cf049793f

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