[PATCH] D13858: Add an MCTargetMachine and have it construct MC classes.

Daniel Sanders via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 19 03:37:51 PDT 2015


dsanders created this revision.
dsanders added subscribers: echristo, rengolin, llvm-commits.
Herald added subscribers: dsanders, jyknight, dschuff, arsenm, jfb, jholewinski.

All targets require a registered MCTargetMachine, even if it's just
MCTargetMachine itself.

This patch uses the Triple as the representation for the target but follow
up patches will start to break this up on a per-target basis.

A corresponding patch to clang will be committed along with this. The patch
is similar to the patches in the tools in ./tools/....

MCRelocationInfo, and MCSymbolizer has been left out of this patch since
they require special care to avoid a circular dependency between MC and
MCDisassembler.

http://reviews.llvm.org/D13858

Files:
  include/llvm/MC/MCTargetMachine.h
  include/llvm/Support/TargetRegistry.h
  include/llvm/Target/TargetMachine.h
  lib/CodeGen/AsmPrinter/AsmPrinter.cpp
  lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp
  lib/CodeGen/LLVMTargetMachine.cpp
  lib/MC/CMakeLists.txt
  lib/MC/MCDisassembler/Disassembler.cpp
  lib/MC/MCDisassembler/Disassembler.h
  lib/MC/MCTargetMachine.cpp
  lib/Object/IRObjectFile.cpp
  lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp
  lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp
  lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp
  lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.h
  lib/Target/AMDGPU/MCTargetDesc/AMDGPUAsmBackend.cpp
  lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.cpp
  lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.h
  lib/Target/ARM/Disassembler/ARMDisassembler.cpp
  lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
  lib/Target/ARM/MCTargetDesc/ARMAsmBackend.h
  lib/Target/ARM/MCTargetDesc/ARMAsmBackendDarwin.h
  lib/Target/ARM/MCTargetDesc/ARMAsmBackendELF.h
  lib/Target/ARM/MCTargetDesc/ARMAsmBackendWinCOFF.h
  lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp
  lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.h
  lib/Target/BPF/MCTargetDesc/BPFAsmBackend.cpp
  lib/Target/BPF/MCTargetDesc/BPFMCTargetDesc.cpp
  lib/Target/BPF/MCTargetDesc/BPFMCTargetDesc.h
  lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp
  lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
  lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp
  lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.h
  lib/Target/MSP430/MCTargetDesc/MSP430MCTargetDesc.cpp
  lib/Target/Mips/Disassembler/MipsDisassembler.cpp
  lib/Target/Mips/MCTargetDesc/MipsAsmBackend.cpp
  lib/Target/Mips/MCTargetDesc/MipsAsmBackend.h
  lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp
  lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.h
  lib/Target/Mips/MipsAsmPrinter.cpp
  lib/Target/NVPTX/MCTargetDesc/NVPTXMCTargetDesc.cpp
  lib/Target/PowerPC/Disassembler/PPCDisassembler.cpp
  lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp
  lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
  lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.h
  lib/Target/PowerPC/PPCAsmPrinter.cpp
  lib/Target/Sparc/Disassembler/SparcDisassembler.cpp
  lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
  lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.cpp
  lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.h
  lib/Target/SystemZ/Disassembler/SystemZDisassembler.cpp
  lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmBackend.cpp
  lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp
  lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.h
  lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp
  lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
  lib/Target/X86/Disassembler/X86Disassembler.cpp
  lib/Target/X86/Disassembler/X86Disassembler.h
  lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
  lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp
  lib/Target/X86/MCTargetDesc/X86MCTargetDesc.h
  lib/Target/X86/X86MCInstLower.cpp
  lib/Target/XCore/Disassembler/XCoreDisassembler.cpp
  lib/Target/XCore/MCTargetDesc/XCoreMCTargetDesc.cpp
  tools/dsymutil/DwarfLinker.cpp
  tools/llvm-mc/Disassembler.cpp
  tools/llvm-mc/llvm-mc.cpp
  tools/llvm-objdump/MachODump.cpp
  tools/llvm-objdump/llvm-objdump.cpp
  tools/llvm-rtdyld/llvm-rtdyld.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D13858.37731.patch
Type: text/x-patch
Size: 116652 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20151019/58c2597a/attachment-0001.bin>


More information about the llvm-commits mailing list