[all-commits] [llvm/llvm-project] da06b4: [NFC][Clang][FMV] Refactor sema checking of target...

Alexandros Lamprineas via All-commits all-commits at lists.llvm.org
Tue Jul 22 05:12:05 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: da06b45d27f70485857dae6a1298350045dc25bd
      https://github.com/llvm/llvm-project/commit/da06b45d27f70485857dae6a1298350045dc25bd
  Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
  Date:   2025-07-22 (Tue, 22 Jul 2025)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaARM.h
    M clang/include/clang/Sema/SemaRISCV.h
    M clang/include/clang/Sema/SemaX86.h
    M clang/lib/Sema/SemaARM.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaRISCV.cpp
    M clang/lib/Sema/SemaX86.cpp
    M clang/test/SemaCXX/attr-target-clones-riscv.cpp

  Log Message:
  -----------
  [NFC][Clang][FMV] Refactor sema checking of target_version/clones attributes. (#149067)

Sema currently has checkTargetVersionAttr and
checkTargetClonesAttrString to diagnose the said attributes. However the
code tries to handle all of AArch64, RISC-V and X86 targets at once
which is hard to maintain, therefore I am splitting these functions.
Unfortunately I could not use polymorphism because all of Sema, SemaARM,
SemaRISCV and SemaX86 inherit from SemaBase. The Sema instance itself
contains instances of every other target specific Sema.



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