LLVM 19.0.0git
XtensaMCTargetDesc.h
Go to the documentation of this file.
1//===-- XtensaMCTargetDesc.h - Xtensa Target Descriptions -------*- C++ -*-===//
2//
3// The LLVM Compiler Infrastructure
4//
5// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
6// See https://llvm.org/LICENSE.txt for license information.
7// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
8//
9//===----------------------------------------------------------------------===//
10//
11// This file provides Xtensa specific target descriptions.
12//
13//===----------------------------------------------------------------------===//
14
15#ifndef LLVM_LIB_TARGET_XTENSA_MCTARGETDESC_XTENSAMCTARGETDESC_H
16#define LLVM_LIB_TARGET_XTENSA_MCTARGETDESC_XTENSAMCTARGETDESC_H
18#include <memory>
19
20namespace llvm {
21
22class MCAsmBackend;
23class MCCodeEmitter;
24class MCContext;
25class MCInstrInfo;
26class MCObjectTargetWriter;
27class MCObjectWriter;
28class MCRegisterInfo;
29class MCSubtargetInfo;
30class MCTargetOptions;
31class StringRef;
32class Target;
33class raw_ostream;
34
36
37MCCodeEmitter *createXtensaMCCodeEmitter(const MCInstrInfo &MCII,
38 MCContext &Ctx);
39
40MCAsmBackend *createXtensaMCAsmBackend(const Target &T,
41 const MCSubtargetInfo &STI,
42 const MCRegisterInfo &MRI,
43 const MCTargetOptions &Options);
44std::unique_ptr<MCObjectTargetWriter>
45createXtensaObjectWriter(uint8_t OSABI, bool IsLittleEndian);
46} // end namespace llvm
47
48// Defines symbolic names for Xtensa registers.
49// This defines a mapping from register name to register number.
50#define GET_REGINFO_ENUM
51#include "XtensaGenRegisterInfo.inc"
52
53// Defines symbolic names for the Xtensa instructions.
54#define GET_INSTRINFO_ENUM
55#include "XtensaGenInstrInfo.inc"
56
57#define GET_SUBTARGETINFO_ENUM
58#include "XtensaGenSubtargetInfo.inc"
59
60#endif // LLVM_LIB_TARGET_XTENSA_MCTARGETDESC_XTENSAMCTARGETDESC_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 > createXtensaObjectWriter(uint8_t OSABI, bool IsLittleEndian)
Target TheXtensaTarget
MCCodeEmitter * createXtensaMCCodeEmitter(const MCInstrInfo &MCII, MCContext &Ctx)
MCAsmBackend * createXtensaMCAsmBackend(const Target &T, const MCSubtargetInfo &STI, const MCRegisterInfo &MRI, const MCTargetOptions &Options)