[all-commits] [llvm/llvm-project] 48a99a: [libc] Add llvm-libc-types header deps for <comple...

Marco Elver via All-commits all-commits at lists.llvm.org
Tue Oct 21 09:54:24 PDT 2025


  Branch: refs/heads/users/melver/spr/main.clangsema-add-__builtin_infer_alloc_token-declaration-and-semantic-checks
  Home:   https://github.com/llvm/llvm-project
  Commit: 48a99ad1fa8b3fe7c0f23f02e95e6c23e145429d
      https://github.com/llvm/llvm-project/commit/48a99ad1fa8b3fe7c0f23f02e95e6c23e145429d
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2025-10-21 (Tue, 21 Oct 2025)

  Changed paths:
    M libc/include/CMakeLists.txt

  Log Message:
  -----------
  [libc] Add llvm-libc-types header deps for <complex.h>. (#164422)

complex.yaml declares types cfloat16, cfloat128 and float128 in its
'types' section, causing the output complex.h to #include three headers
with names of the form "llvm-libc-types/cfloat16.h". But
include/CMakeLists.txt doesn't mention those types as dependencies in
the `add_header_macro` call for complex.h. As a result, cfloat16.h and
cfloat128.h are not installed by the 'install' target, but complex.h
still tries to to include them.

The third type header, float128.h, doesn't have this problem because the
`add_header_macro` math.h does mention it as a dependency. So I've added
all three headers as dependencies in complex.h, following the same
pattern, and now the install target installs the missing two headers.


  Commit: 550b62cbcbcb1ec8ec16c2dc0812bc23383962d6
      https://github.com/llvm/llvm-project/commit/550b62cbcbcb1ec8ec16c2dc0812bc23383962d6
  Author: Prabhu Rajasekaran <prabhukr at google.com>
  Date:   2025-10-21 (Tue, 21 Oct 2025)

  Changed paths:
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    A clang/test/CodeGen/call-graph-section-callback.cpp
    A clang/test/CodeGen/call-graph-section-templates.cpp
    A clang/test/CodeGen/call-graph-section-virtual-methods.cpp
    A clang/test/CodeGen/call-graph-section.c
    A clang/test/CodeGen/call-graph-section.cpp

  Log Message:
  -----------
  [clang] callee_type metadata for indirect calls (#163233)

Create and add generalized type identifier metadata to indirect calls,
and to functions which are potential indirect call targets.

The functions carry the !type metadata. The indirect callsites carry a
list of !type metadata values under !callee_type metadata.

RFC:
https://discourse.llvm.org/t/rfc-call-graph-information-from-clang-llvm-for-c-c/88255


  Commit: abf80b54bc752dc44f821da1fa9d2d3117a3c8c0
      https://github.com/llvm/llvm-project/commit/abf80b54bc752dc44f821da1fa9d2d3117a3c8c0
  Author: Connector Switch <c8ef at outlook.com>
  Date:   2025-10-21 (Tue, 21 Oct 2025)

  Changed paths:
    M libcxx/include/__algorithm/for_each.h

  Log Message:
  -----------
  [libc++][IWYU] Remove `std::move` header in `std::for_each` (#164272)

It seems this was accidentally included; there's no use of std::move in
this header.


  Commit: 9e7209c06115f5b0c750b7a1fe837ac10a6739a3
      https://github.com/llvm/llvm-project/commit/9e7209c06115f5b0c750b7a1fe837ac10a6739a3
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-10-21 (Tue, 21 Oct 2025)

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

  Log Message:
  -----------
  [clang][bytecode][NFC] Clean up variable creation (#164415)


  Commit: 2ec01e430a5d2f05f379bdd6256a54ba2ec70eaa
      https://github.com/llvm/llvm-project/commit/2ec01e430a5d2f05f379bdd6256a54ba2ec70eaa
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-10-21 (Tue, 21 Oct 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp

  Log Message:
  -----------
  [VPlan] Move two VPBlockUtils members (NFC) (#162507)


  Commit: 554ea40b575c4ccd1f420aad08c77176444981ee
      https://github.com/llvm/llvm-project/commit/554ea40b575c4ccd1f420aad08c77176444981ee
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2025-10-21 (Tue, 21 Oct 2025)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaBase.h
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaBase.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaRISCV.cpp

  Log Message:
  -----------
  [NFC][Clang][Diagnostics] Remove the DeferHint parameter of Diags(...) in favour of DeferHintRAII (#161517)

The `DeferHint` was misused at several callsites, where a `Decl*` was
implicitly casted to `bool`.

This patch proposes removing the `DeferHint` parameter and relying on
`DeferDiagsRAII` to set if Clang should defer the diagnostics.


  Commit: 5b3416caf91f770b6e50fa1cb593d5772a7f6c97
      https://github.com/llvm/llvm-project/commit/5b3416caf91f770b6e50fa1cb593d5772a7f6c97
  Author: Connector Switch <c8ef at outlook.com>
  Date:   2025-10-21 (Tue, 21 Oct 2025)

  Changed paths:
    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/dev/undefined_behavior.rst
    M libc/include/arpa/inet.yaml
    M libc/src/arpa/inet/CMakeLists.txt
    A libc/src/arpa/inet/inet_aton.cpp
    A libc/src/arpa/inet/inet_aton.h
    M libc/test/src/arpa/inet/CMakeLists.txt
    A libc/test/src/arpa/inet/inet_aton_test.cpp

  Log Message:
  -----------
  [libc] implement `inet_aton` (#162651)

This patch adds the implementation for `inet_aton` function. Since this
function is not explicitly included in POSIX, I have marked it with
`llvm_libc_ext`. It is widely available and commonly used, and can also
be used to implement `inet_addr`, which is included in POSIX.


  Commit: 23339c4fc622e2d627c651b92ba5435811b4d5e4
      https://github.com/llvm/llvm-project/commit/23339c4fc622e2d627c651b92ba5435811b4d5e4
  Author: Lucie Choi <clucie at google.com>
  Date:   2025-10-21 (Tue, 21 Oct 2025)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/SPIRV/hlsl-resources/TypedBufferLoad.ll

  Log Message:
  -----------
  [SPIR-V] Use `OpImageFetch` instead of `OpImageRead` when loading from read-only `Buffer` resource. (#163626)

Currently, the spir-v validator fails if `OpImageRead` instruction is
used when loading from read-only `Buffer`.
### Unit Test
```hlsl
RWBuffer<uint> rwbuff;
Buffer<uint>  buff;

[numthreads(1,1,1)]
void main() {
    rwbuff[99] = buff[98];
    rwbuff[97] = rwbuff[96];
}
```
This also unblocks adding a test case that adds a special capability
when using a non-uniform index on `Buffer` arrays.
(https://github.com/llvm/llvm-project/pull/162540).

Resolves https://github.com/llvm/llvm-project/issues/162891


  Commit: 6d5dea63eda988bc8dcdd283f77531f7900b88ca
      https://github.com/llvm/llvm-project/commit/6d5dea63eda988bc8dcdd283f77531f7900b88ca
  Author: David Green <david.green at arm.com>
  Date:   2025-10-21 (Tue, 21 Oct 2025)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/test/CodeGen/ARM/llround-conv.ll
    M llvm/test/CodeGen/ARM/lround-conv.ll

  Log Message:
  -----------
  [ARM][SDAG] Add llvm.lround half promotion. (#164235)

Similar to #161088, add llvm.lround and llvm.llround promotion.


  Commit: 3161e160c147882d36f572b0a834bb138898738b
      https://github.com/llvm/llvm-project/commit/3161e160c147882d36f572b0a834bb138898738b
  Author: Sirui Mu <msrlancern at gmail.com>
  Date:   2025-10-21 (Tue, 21 Oct 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/test/CIR/CodeGen/atomic.c
    A clang/test/CIR/IR/invalid-atomic.cir

  Log Message:
  -----------
  [CIR] Atomic fetch operation (#161631)

This patch adds CIR support for atomic fetch-and-update operations,
including the intrinsic functions `__atomic_fetch_<binop>`,
`__atomic_<binop>_fetch`, and `__c11_atomic_fetch_<binop>`, where
`<binop>` could be `add`, `sub`, `max`, `min`, `and`, `or`, `xor`, and
`nand`.


  Commit: 0c0ad1179b3097d49e30e46ed2dcc97f1f13932c
      https://github.com/llvm/llvm-project/commit/0c0ad1179b3097d49e30e46ed2dcc97f1f13932c
  Author: Susan Tan (ス-ザン タン) <zujunt at nvidia.com>
  Date:   2025-10-21 (Tue, 21 Oct 2025)

  Changed paths:
    M flang/lib/Lower/OpenACC.cpp
    A flang/test/Lower/OpenACC/acc-declare-common-in-function.f90

  Log Message:
  -----------
  [acc][flang] lowering of acc declare on COMMON variables (#163676)

COMMON variables are treated as locals and lowered to structured
declares currently. This is incorrect because variables that are COMMON
should be treated as globals. Added implementation to treat these
variables differently.


  Commit: fb870cb47fc549a9efc20ecf50726269a2aa9677
      https://github.com/llvm/llvm-project/commit/fb870cb47fc549a9efc20ecf50726269a2aa9677
  Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
  Date:   2025-10-21 (Tue, 21 Oct 2025)

  Changed paths:
    M llvm/unittests/ExecutionEngine/Orc/WaitingOnGraphTest.cpp

  Log Message:
  -----------
  [ORC] Fix unused variable warning (#164444)

This fixes a potentially unused variable that's only used in an assert.

This is a fix for #164340.


  Commit: b1322c4bee0f6aa62d6c9a95c42109efc9e7cc54
      https://github.com/llvm/llvm-project/commit/b1322c4bee0f6aa62d6c9a95c42109efc9e7cc54
  Author: Andrew Haberlandt <ndrewh at users.noreply.github.com>
  Date:   2025-10-21 (Tue, 21 Oct 2025)

  Changed paths:
    M compiler-rt/cmake/builtin-config-ix.cmake
    M compiler-rt/cmake/config-ix.cmake

  Log Message:
  -----------
  [compiler-rt] [CMake] Skip find_darwin_sdk_dir on disabled platforms (#163591)

find_darwin_sdk_dir can be slow, especially if xcrun does not
immediately find the corresponding SDK (i.e. because it is missing).

This skips those checks if the user has already set the corresponding
CMake variable to disable the platform anyway.


  Commit: 3155b0504401344279e496da107b3eab0e7295bc
      https://github.com/llvm/llvm-project/commit/3155b0504401344279e496da107b3eab0e7295bc
  Author: Morris Hafner <mmha at users.noreply.github.com>
  Date:   2025-10-22 (Wed, 22 Oct 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    A clang/test/CIR/CodeGen/builtin_inline.c

  Log Message:
  -----------
  [CIR] Implement inline builtin functions (#163911)

This patch implements the handling of inline builtin functions in CIR.
There is a known limitation in CIR where direct calls to shadowed inline
builtin functions are generated instead of the intrinsic. This is
expected to be fixed by the introduction of the nobuiltin attribute in a
future patch.


  Commit: 311a199e2178a9127953e9632434c2e82822e98b
      https://github.com/llvm/llvm-project/commit/311a199e2178a9127953e9632434c2e82822e98b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-10-21 (Tue, 21 Oct 2025)

  Changed paths:
    A llvm/test/CodeGen/X86/bitcnt-big-integer.ll

  Log Message:
  -----------
  [X86] Add ctpop/ctlz/cttz test coverage for very large integers (#164450)

Inspired by #164275


  Commit: 70f70390bb83a383fcb88ea843adbc4edf6ee34b
      https://github.com/llvm/llvm-project/commit/70f70390bb83a383fcb88ea843adbc4edf6ee34b
  Author: slachowsky <stephan.lachowsky at gmail.com>
  Date:   2025-10-21 (Tue, 21 Oct 2025)

  Changed paths:
    M clang/lib/Basic/Targets/RISCV.cpp
    M clang/lib/Basic/Targets/RISCV.h
    A clang/test/Preprocessor/riscv-atomics.c
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/Target/RISCV/RISCVExpandAtomicPseudoInsts.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInstrInfoA.td
    M llvm/test/CodeGen/RISCV/atomic-fence.ll
    M llvm/test/CodeGen/RISCV/atomic-load-store.ll
    M llvm/test/CodeGen/RISCV/atomic-rmw-sub.ll
    M llvm/test/CodeGen/RISCV/atomic-rmw.ll
    M llvm/test/CodeGen/RISCV/atomic-signext.ll

  Log Message:
  -----------
  [RISCV][LLVM] Enable atomics for 'Zalrsc' (#163672)

The 'A' atomics extension is composed of two subextensions, 'Zaamo'
which has atomic memory operation instructions, and 'Zalrsc' which has
load-reserve / store-conditional instructions.
    
For machines where 'Zalrsc' is present, but 'Zaamo' is not, implement
and enable atomics memory operations through pseudo expansion. Updates the
predication and lowering control to be more precise about which 'Zaamo'/'Zalrsc'
feature was truly requisite.
    
There will be no functional change to subtargets supporting 'A', while
allowing 'Zalrsc' only subtargets to utilize atomics at an increased code
footprint.


  Commit: 8dbc1527f7ad4197dfff8ea598634a8063bb6083
      https://github.com/llvm/llvm-project/commit/8dbc1527f7ad4197dfff8ea598634a8063bb6083
  Author: Marco Elver <elver at google.com>
  Date:   2025-10-21 (Tue, 21 Oct 2025)

  Changed paths:
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/lib/Transforms/Instrumentation/AllocToken.cpp
    A llvm/test/Instrumentation/AllocToken/intrinsic.ll
    A llvm/test/Instrumentation/AllocToken/intrinsic32.ll

  Log Message:
  -----------
  [AllocToken] Introduce llvm.alloc.token.id intrinsic (#163632)

Introduce a new intrinsic, `llvm.alloc.token.id`, to allow compile-time
querying of allocation token IDs.

The `AllocToken` pass is taught to recognize and lower this intrinsic.
It extracts the `!alloc_token` metadata from the intrinsic's argument,
feeds it into the same token-generation logic used for instrumenting allocation
calls, and replaces the intrinsic with the resulting constant integer token ID.

This is a prerequisite for `__builtin_infer_alloc_token`. The pass now
runs on all functions to ensure intrinsics are lowered, but continues to
only instrument allocation calls in functions with the
`sanitize_alloc_token` attribute.


  Commit: 943712969b042f997b4f156633337209681bfeef
      https://github.com/llvm/llvm-project/commit/943712969b042f997b4f156633337209681bfeef
  Author: Marco Elver <elver at google.com>
  Date:   2025-10-21 (Tue, 21 Oct 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaBase.h
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/Basic/Targets/RISCV.cpp
    M clang/lib/Basic/Targets/RISCV.h
    M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaBase.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaRISCV.cpp
    M clang/test/CIR/CodeGen/atomic.c
    A clang/test/CIR/CodeGen/builtin_inline.c
    A clang/test/CIR/IR/invalid-atomic.cir
    A clang/test/CodeGen/call-graph-section-callback.cpp
    A clang/test/CodeGen/call-graph-section-templates.cpp
    A clang/test/CodeGen/call-graph-section-virtual-methods.cpp
    A clang/test/CodeGen/call-graph-section.c
    A clang/test/CodeGen/call-graph-section.cpp
    A clang/test/Preprocessor/riscv-atomics.c
    M compiler-rt/cmake/builtin-config-ix.cmake
    M compiler-rt/cmake/config-ix.cmake
    M flang/lib/Lower/OpenACC.cpp
    A flang/test/Lower/OpenACC/acc-declare-common-in-function.f90
    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/dev/undefined_behavior.rst
    M libc/include/CMakeLists.txt
    M libc/include/arpa/inet.yaml
    M libc/src/arpa/inet/CMakeLists.txt
    A libc/src/arpa/inet/inet_aton.cpp
    A libc/src/arpa/inet/inet_aton.h
    M libc/test/src/arpa/inet/CMakeLists.txt
    A libc/test/src/arpa/inet/inet_aton_test.cpp
    M libcxx/include/__algorithm/for_each.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVExpandAtomicPseudoInsts.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInstrInfoA.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/test/CodeGen/ARM/llround-conv.ll
    M llvm/test/CodeGen/ARM/lround-conv.ll
    M llvm/test/CodeGen/RISCV/atomic-fence.ll
    M llvm/test/CodeGen/RISCV/atomic-load-store.ll
    M llvm/test/CodeGen/RISCV/atomic-rmw-sub.ll
    M llvm/test/CodeGen/RISCV/atomic-rmw.ll
    M llvm/test/CodeGen/RISCV/atomic-signext.ll
    A llvm/test/CodeGen/SPIRV/hlsl-resources/TypedBufferLoad.ll
    A llvm/test/CodeGen/X86/bitcnt-big-integer.ll
    M llvm/unittests/ExecutionEngine/Orc/WaitingOnGraphTest.cpp

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

Created using spr 1.3.8-beta.1

[skip ci]


Compare: https://github.com/llvm/llvm-project/compare/990d7c070e49...943712969b04

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