LLVM 17.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"
20
21namespace llvm {
22class MCAsmBackend;
23class MCCodeEmitter;
24class MCContext;
25class MCInstrInfo;
26class MCRegisterInfo;
27class MCSubtargetInfo;
28class MCRelocationInfo;
29class MCTargetOptions;
30class Target;
31class Triple;
32class StringRef;
33class raw_ostream;
34class raw_pwrite_stream;
35
36MCAsmBackend *createM68kAsmBackend(const Target &T, const MCSubtargetInfo &STI,
37 const MCRegisterInfo &MRI,
38 const MCTargetOptions &Options);
39
40MCCodeEmitter *createM68kMCCodeEmitter(const MCInstrInfo &MCII,
41 MCContext &Ctx);
42
43/// Construct an M68k ELF object writer.
44std::unique_ptr<MCObjectTargetWriter> createM68kELFObjectWriter(uint8_t OSABI);
45
46} // namespace llvm
47
48// Defines symbolic names for M68k registers. This defines a mapping from
49// register name to register number.
50#define GET_REGINFO_ENUM
51#include "M68kGenRegisterInfo.inc"
52
53// Defines symbolic names for the M68k instructions.
54#define GET_INSTRINFO_ENUM
55#define GET_INSTRINFO_MC_HELPER_DECLS
56#include "M68kGenInstrInfo.inc"
57
58#define GET_SUBTARGETINFO_ENUM
59#include "M68kGenSubtargetInfo.inc"
60
61#endif // LLVM_LIB_TARGET_M68K_MCTARGETDESC_M68KMCTARGETDESC_H
unsigned const MachineRegisterInfo * MRI
static LVOptions Options
Definition: LVOptions.cpp:25
This is an optimization pass for GlobalISel generic memory operations.
Definition: AddressRanges.h:18
std::unique_ptr< MCObjectTargetWriter > createM68kELFObjectWriter(uint8_t OSABI)
Construct an M68k ELF object writer.
MCAsmBackend * createM68kAsmBackend(const Target &T, const MCSubtargetInfo &STI, const MCRegisterInfo &MRI, const MCTargetOptions &Options)
MCCodeEmitter * createM68kMCCodeEmitter(const MCInstrInfo &MCII, MCContext &Ctx)