[all-commits] [llvm/llvm-project] 8de9f2: Move SubtargetFeature.h from MC to TargetParser

Job Noorman via All-commits all-commits at lists.llvm.org
Mon Jun 26 02:20:28 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 8de9f2b558a046da15cf73191da627bdd83676ca
      https://github.com/llvm/llvm-project/commit/8de9f2b558a046da15cf73191da627bdd83676ca
  Author: Job Noorman <jnoorman at igalia.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/Driver/ToolChains/AVR.cpp
    M llvm/include/llvm/ExecutionEngine/Orc/JITTargetMachineBuilder.h
    M llvm/include/llvm/MC/MCParser/MCTargetAsmParser.h
    M llvm/include/llvm/MC/MCSubtargetInfo.h
    R llvm/include/llvm/MC/SubtargetFeature.h
    M llvm/include/llvm/Object/COFF.h
    M llvm/include/llvm/Object/ELFObjectFile.h
    M llvm/include/llvm/Object/GOFFObjectFile.h
    M llvm/include/llvm/Object/MachO.h
    A llvm/include/llvm/TargetParser/SubtargetFeature.h
    M llvm/lib/CodeGen/CommandFlags.cpp
    M llvm/lib/ExecutionEngine/TargetSelect.cpp
    M llvm/lib/LTO/LTOBackend.cpp
    M llvm/lib/LTO/LTOCodeGenerator.cpp
    M llvm/lib/LTO/LTOModule.cpp
    M llvm/lib/LTO/ThinLTOCodeGenerator.cpp
    M llvm/lib/MC/CMakeLists.txt
    M llvm/lib/MC/MCSubtargetInfo.cpp
    R llvm/lib/MC/SubtargetFeature.cpp
    M llvm/lib/Object/ELFObjectFile.cpp
    M llvm/lib/Object/WasmObjectFile.cpp
    M llvm/lib/Object/XCOFFObjectFile.cpp
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/R600MCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/R600MCTargetDesc.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/SIMCCodeEmitter.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
    M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
    M llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMInstPrinter.cpp
    M llvm/lib/Target/ARM/Utils/ARMBaseInfo.h
    M llvm/lib/Target/AVR/MCTargetDesc/AVRELFStreamer.cpp
    M llvm/lib/Target/BPF/Disassembler/BPFDisassembler.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCCodeEmitter.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchBaseInfo.h
    M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMatInt.h
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCCodeEmitter.cpp
    M llvm/lib/Target/TargetMachineC.cpp
    M llvm/lib/TargetParser/CMakeLists.txt
    A llvm/lib/TargetParser/SubtargetFeature.cpp
    M llvm/tools/llc/llc.cpp
    M llvm/tools/llvm-jitlink/llvm-jitlink.h
    M llvm/tools/llvm-mc-assemble-fuzzer/llvm-mc-assemble-fuzzer.cpp
    M llvm/tools/llvm-mc-disassemble-fuzzer/llvm-mc-disassemble-fuzzer.cpp
    M llvm/tools/opt/opt.cpp
    M llvm/unittests/tools/llvm-mca/MCATestBase.h
    M llvm/utils/TableGen/DecoderEmitter.cpp
    M llvm/utils/TableGen/SubtargetEmitter.cpp
    M mlir/lib/ExecutionEngine/ExecutionEngine.cpp
    M openmp/libomptarget/plugins-nextgen/common/PluginInterface/JIT.cpp

  Log Message:
  -----------
  Move SubtargetFeature.h from MC to TargetParser

SubtargetFeature.h is currently part of MC while it doesn't depend on
anything in MC. Since some LLVM components might have the need to work
with target features without necessarily needing MC, it might be
worthwhile to move SubtargetFeature.h to a different location. This will
reduce the dependencies of said components.

Note that I choose TargetParser as the destination because that's where
Triple lives and SubtargetFeatures feels related to that.

This issues came up during a JITLink review (D149522). JITLink would
like to avoid a dependency on MC while still needing to store target
features.

Reviewed By: MaskRay, arsenm

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




More information about the All-commits mailing list