[all-commits] [llvm/llvm-project] d8675e: [CodeGen][CIR] Share AArch64/AMDGPU target predica...

Henrich Lauko via All-commits all-commits at lists.llvm.org
Mon Sep 14 07:26:21 PDT 2026


  Branch: refs/heads/users/xlauko/cgutils-08-target-predicates
  Home:   https://github.com/llvm/llvm-project
  Commit: d8675e6d704d2bff7005f0c451549a2ef38b33bd
      https://github.com/llvm/llvm-project/commit/d8675e6d704d2bff7005f0c451549a2ef38b33bd
  Author: Henrich Lauko <hlauko at nvidia.com>
  Date:   2026-09-14 (Mon, 14 Sep 2026)

  Changed paths:
    A clang/include/clang/CodeGenUtils/TargetUtils.h
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/lib/CIR/CodeGen/TargetInfo.cpp
    M clang/lib/CIR/CodeGen/TargetInfo.h
    M clang/lib/CIR/CodeGen/Targets/AArch64.cpp
    M clang/lib/CIR/CodeGen/Targets/AMDGPU.cpp
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/lib/CodeGen/Targets/AMDGPU.cpp
    M clang/lib/CodeGenUtils/CMakeLists.txt
    A clang/lib/CodeGenUtils/TargetUtils.cpp

  Log Message:
  -----------
  [CodeGen][CIR] Share AArch64/AMDGPU target predicates via CodeGenUtils

Classic CodeGen and CIR CodeGen each carry their own copy of three
AST-only target predicates:

  * the AArch64 SME inlinability cluster (the ArmSMEInlinability bitmask
    enum, its isStreamingCompatible helper, and GetArmSMEInlinability),
  * requiresAMDGPUProtectedVisibility, and
  * HasExtraNeonArgument.

None of them touch llvm::Type, llvm::Value or the CIR dialect, so move
them into a new clang/CodeGenUtils/TargetUtils.h and drop the
duplicates.  requiresAMDGPUProtectedVisibility now takes a bool for the
current visibility instead of a backend-specific global value, which is
all either caller actually inspected.

NFC.



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