[all-commits] [llvm/llvm-project] e970cf: [AArch64][clang][llvm] Add ACLE `stshh` atomic sto...

Jonathan Thackray via All-commits all-commits at lists.llvm.org
Mon Feb 23 13:20:13 PST 2026


  Branch: refs/heads/users/jthackray/acle_pcdphint_arm_atomic_store_with_stshh
  Home:   https://github.com/llvm/llvm-project
  Commit: e970cf7e563794d16d2b8c41cd827ca65b479295
      https://github.com/llvm/llvm-project/commit/e970cf7e563794d16d2b8c41cd827ca65b479295
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAArch64.def
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/Headers/arm_acle.h
    M clang/lib/Sema/SemaARM.cpp
    A clang/test/CodeGen/AArch64/pcdphint-atomic-store.c
    A clang/test/Sema/AArch64/pcdphint-atomic-store.c
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp

  Log Message:
  -----------
  [AArch64][clang][llvm] Add ACLE `stshh` atomic store builtin

Add `__arm_atomic_store_with_stshh` implementation as defined
in the ACLE. Validate that the arguments passed are correct, and
lower it to the stshh intrinsic plus an atomic store with the
allowed orderings.

Gate this on FEAT_PCDPHINT so that availability matches
hardware support for the `STSHH` instruction. Use an i64
immediate and side-effect modeling to satisfy tablegen and decoding.


  Commit: b30fd5677eeb126362f9992b264b9a10c52acac5
      https://github.com/llvm/llvm-project/commit/b30fd5677eeb126362f9992b264b9a10c52acac5
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/test/Sema/AArch64/pcdphint-atomic-store.c
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td

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

A few small tidyups


  Commit: 62c124a58eb722fa54e0324993e13eab350b19f7
      https://github.com/llvm/llvm-project/commit/62c124a58eb722fa54e0324993e13eab350b19f7
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAArch64.def
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/Headers/arm_acle.h
    M clang/lib/Sema/SemaARM.cpp
    M clang/test/CodeGen/AArch64/pcdphint-atomic-store.c
    M clang/test/Sema/AArch64/pcdphint-atomic-store.c

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

More small issues tidied, and remove gating.


  Commit: c64c7b5d0917c9449ff9720498480ed8800cfbe8
      https://github.com/llvm/llvm-project/commit/c64c7b5d0917c9449ff9720498480ed8800cfbe8
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/Headers/arm_acle.h
    M clang/lib/Sema/SemaARM.cpp
    M clang/test/Sema/AArch64/pcdphint-atomic-store.c
    A llvm/test/CodeGen/AArch64/pcdphint-atomic-store.ll

  Log Message:
  -----------
  fixup! Improve error diagnostics, and other cleanups


  Commit: f7b8f55ce9983ce5fdd15fb1e77c1108e898f81b
      https://github.com/llvm/llvm-project/commit/f7b8f55ce9983ce5fdd15fb1e77c1108e898f81b
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/Headers/arm_acle.h
    M clang/lib/Sema/SemaARM.cpp
    M clang/test/Sema/AArch64/pcdphint-atomic-store.c
    M llvm/test/CodeGen/AArch64/pcdphint-atomic-store.ll

  Log Message:
  -----------
  fixup! Fix Kerry's CR comments and add negative test for "must be an integer type"


  Commit: 1dffe2c17b9a250dbf22a8ddad8721b227bd6dfe
      https://github.com/llvm/llvm-project/commit/1dffe2c17b9a250dbf22a8ddad8721b227bd6dfe
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/Sema/SemaARM.cpp
    M clang/test/CodeGen/AArch64/pcdphint-atomic-store.c
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/pcdphint-atomic-store.ll

  Log Message:
  -----------
  fixup! Ensure stshh always immediately precedes a store instruction


  Commit: ce165840455fcc10f56fce690657be7f3b6b93c1
      https://github.com/llvm/llvm-project/commit/ce165840455fcc10f56fce690657be7f3b6b93c1
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td

  Log Message:
  -----------
  fixup! remove mayLoad/mayStore as suggested by Kerry


Compare: https://github.com/llvm/llvm-project/compare/f7ae5e6b5a0f...ce165840455f

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