LLVM  14.0.0git
M68kMCTargetDesc.h
Go to the documentation of this file.
1 //===-- M68kMCTargetDesc.h - M68k Target Descriptions -------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 ///
9 /// \file
10 /// This file provides M68k specific target descriptions.
11 ///
12 //===----------------------------------------------------------------------===//
13 
14 #ifndef LLVM_LIB_TARGET_M68K_MCTARGETDESC_M68KMCTARGETDESC_H
15 #define LLVM_LIB_TARGET_M68K_MCTARGETDESC_M68KMCTARGETDESC_H
16 
17 #include "llvm/MC/MCInstrDesc.h"
18 #include "llvm/MC/MCObjectWriter.h"
19 #include "llvm/Support/DataTypes.h"
20 
21 namespace llvm {
22 class MCAsmBackend;
23 class MCCodeEmitter;
24 class MCContext;
25 class MCInstrInfo;
26 class MCRegisterInfo;
27 class MCSubtargetInfo;
28 class MCRelocationInfo;
29 class MCTargetOptions;
30 class Target;
31 class Triple;
32 class StringRef;
33 class raw_ostream;
34 class raw_pwrite_stream;
35 
36 MCAsmBackend *createM68kAsmBackend(const Target &T, const MCSubtargetInfo &STI,
37  const MCRegisterInfo &MRI,
38  const MCTargetOptions &Options);
39 
40 MCCodeEmitter *createM68kMCCodeEmitter(const MCInstrInfo &MCII,
41  const MCRegisterInfo &MRI,
42  MCContext &Ctx);
43 
44 /// Construct an M68k ELF object writer.
45 std::unique_ptr<MCObjectTargetWriter> createM68kELFObjectWriter(uint8_t OSABI);
46 
47 } // namespace llvm
48 
49 // Defines symbolic names for M68k registers. This defines a mapping from
50 // register name to register number.
51 #define GET_REGINFO_ENUM
52 #include "M68kGenRegisterInfo.inc"
53 
54 // Defines symbolic names for the M68k instructions.
55 #define GET_INSTRINFO_ENUM
56 #include "M68kGenInstrInfo.inc"
57 
58 #define GET_SUBTARGETINFO_ENUM
59 #include "M68kGenSubtargetInfo.inc"
60 
61 #endif
llvm
This file implements support for optimizing divisions by a constant.
Definition: AllocatorList.h:23
MCInstrDesc.h
llvm::AMDGPU::Exp::Target
Target
Definition: SIDefines.h:742
T
#define T
Definition: Mips16ISelLowering.cpp:341
llvm::createM68kAsmBackend
MCAsmBackend * createM68kAsmBackend(const Target &T, const MCSubtargetInfo &STI, const MCRegisterInfo &MRI, const MCTargetOptions &Options)
Definition: M68kAsmBackend.cpp:234
Options
const char LLVMTargetMachineRef LLVMPassBuilderOptionsRef Options
Definition: PassBuilderBindings.cpp:48
MRI
unsigned const MachineRegisterInfo * MRI
Definition: AArch64AdvSIMDScalarPass.cpp:105
MCObjectWriter.h
llvm::createM68kMCCodeEmitter
MCCodeEmitter * createM68kMCCodeEmitter(const MCInstrInfo &MCII, const MCRegisterInfo &MRI, MCContext &Ctx)
Definition: M68kMCCodeEmitter.cpp:383
llvm::createM68kELFObjectWriter
std::unique_ptr< MCObjectTargetWriter > createM68kELFObjectWriter(uint8_t OSABI)
Construct an M68k ELF object writer.
Definition: M68kELFObjectWriter.cpp:118
DataTypes.h