[all-commits] [llvm/llvm-project] 635347: [clang][CodeGen] Break up TargetInfo.cpp [7/8]

Sergei Barannikov via All-commits all-commits at lists.llvm.org
Fri Jun 16 21:15:10 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 63534779b4ef1816e2961246011e2ec3be110d27
      https://github.com/llvm/llvm-project/commit/63534779b4ef1816e2961246011e2ec3be110d27
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2023-06-17 (Sat, 17 Jun 2023)

  Changed paths:
    M clang/lib/CodeGen/TargetInfo.cpp
    M clang/lib/CodeGen/TargetInfo.h

  Log Message:
  -----------
  [clang][CodeGen] Break up TargetInfo.cpp [7/8]

Wrap calls to XXXTargetCodeGenInfo constructors into factory functions.
This allows moving implementations of TargetCodeGenInfo to dedicated cpp
files without a change.

Reviewed By: efriedma

Differential Revision: https://reviews.llvm.org/D150215


  Commit: 992cb98462abb7630e87003516b75b241628f64c
      https://github.com/llvm/llvm-project/commit/992cb98462abb7630e87003516b75b241628f64c
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2023-06-17 (Sat, 17 Jun 2023)

  Changed paths:
    M clang/docs/UsersManual.rst
    M clang/docs/tools/clang-formatted-files.txt
    A clang/lib/CodeGen/ABIInfo.cpp
    M clang/lib/CodeGen/ABIInfo.h
    A clang/lib/CodeGen/ABIInfoImpl.cpp
    A clang/lib/CodeGen/ABIInfoImpl.h
    M clang/lib/CodeGen/CMakeLists.txt
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/TargetInfo.cpp
    A clang/lib/CodeGen/Targets/AArch64.cpp
    A clang/lib/CodeGen/Targets/AMDGPU.cpp
    A clang/lib/CodeGen/Targets/ARC.cpp
    A clang/lib/CodeGen/Targets/ARM.cpp
    A clang/lib/CodeGen/Targets/AVR.cpp
    A clang/lib/CodeGen/Targets/BPF.cpp
    A clang/lib/CodeGen/Targets/CSKY.cpp
    A clang/lib/CodeGen/Targets/Hexagon.cpp
    A clang/lib/CodeGen/Targets/Lanai.cpp
    A clang/lib/CodeGen/Targets/LoongArch.cpp
    A clang/lib/CodeGen/Targets/M68k.cpp
    A clang/lib/CodeGen/Targets/MSP430.cpp
    A clang/lib/CodeGen/Targets/Mips.cpp
    A clang/lib/CodeGen/Targets/NVPTX.cpp
    A clang/lib/CodeGen/Targets/PNaCl.cpp
    A clang/lib/CodeGen/Targets/PPC.cpp
    A clang/lib/CodeGen/Targets/RISCV.cpp
    A clang/lib/CodeGen/Targets/SPIR.cpp
    A clang/lib/CodeGen/Targets/Sparc.cpp
    A clang/lib/CodeGen/Targets/SystemZ.cpp
    A clang/lib/CodeGen/Targets/TCE.cpp
    A clang/lib/CodeGen/Targets/VE.cpp
    A clang/lib/CodeGen/Targets/WebAssembly.cpp
    A clang/lib/CodeGen/Targets/X86.cpp
    A clang/lib/CodeGen/Targets/XCore.cpp
    M clang/test/CodeGenCXX/microsoft-abi-member-pointers.cpp
    M llvm/utils/gn/secondary/clang/lib/CodeGen/BUILD.gn

  Log Message:
  -----------
  [clang][CodeGen] Break up TargetInfo.cpp [8/8]

This commit breaks up CodeGen/TargetInfo.cpp into a set of *.cpp files,
one file per target. There are no functional changes, mostly just code moving.

Non-code-moving changes are:
* A virtual destructor has been added to DefaultABIInfo to pin the vtable to a cpp file.
* A few methods of ABIInfo and DefaultABIInfo were split into declaration + definition
  in order to reduce the number of transitive includes.
* Several functions that used to be static have been placed in clang::CodeGen
  namespace so that they can be accessed from other cpp files.

RFC: https://discourse.llvm.org/t/rfc-splitting-clangs-targetinfo-cpp/69883

Reviewed By: efriedma

Differential Revision: https://reviews.llvm.org/D148094


Compare: https://github.com/llvm/llvm-project/compare/c2888cddd5d9...992cb98462ab


More information about the All-commits mailing list