mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-24 12:29:33 +00:00
[AArch64] Move AArch64TargetStreamer out of MCStreamer.h
It doesn't belong in the shared MC layer. NFC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@238101 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
a5d0a48209
commit
24b6dadf2d
@ -87,29 +87,6 @@ public:
|
|||||||
virtual void finish();
|
virtual void finish();
|
||||||
};
|
};
|
||||||
|
|
||||||
class AArch64TargetStreamer : public MCTargetStreamer {
|
|
||||||
public:
|
|
||||||
AArch64TargetStreamer(MCStreamer &S);
|
|
||||||
~AArch64TargetStreamer() override;
|
|
||||||
|
|
||||||
void finish() override;
|
|
||||||
|
|
||||||
/// Callback used to implement the ldr= pseudo.
|
|
||||||
/// Add a new entry to the constant pool for the current section and return an
|
|
||||||
/// MCExpr that can be used to refer to the constant pool location.
|
|
||||||
const MCExpr *addConstantPoolEntry(const MCExpr *, unsigned Size);
|
|
||||||
|
|
||||||
/// Callback used to implemnt the .ltorg directive.
|
|
||||||
/// Emit contents of constant pool for the current section.
|
|
||||||
void emitCurrentConstantPool();
|
|
||||||
|
|
||||||
/// Callback used to implement the .inst directive.
|
|
||||||
virtual void emitInst(uint32_t Inst);
|
|
||||||
|
|
||||||
private:
|
|
||||||
std::unique_ptr<AssemblerConstantPools> ConstantPools;
|
|
||||||
};
|
|
||||||
|
|
||||||
// FIXME: declared here because it is used from
|
// FIXME: declared here because it is used from
|
||||||
// lib/CodeGen/AsmPrinter/ARMException.cpp.
|
// lib/CodeGen/AsmPrinter/ARMException.cpp.
|
||||||
class ARMTargetStreamer : public MCTargetStreamer {
|
class ARMTargetStreamer : public MCTargetStreamer {
|
||||||
|
@ -9,6 +9,7 @@
|
|||||||
|
|
||||||
#include "MCTargetDesc/AArch64AddressingModes.h"
|
#include "MCTargetDesc/AArch64AddressingModes.h"
|
||||||
#include "MCTargetDesc/AArch64MCExpr.h"
|
#include "MCTargetDesc/AArch64MCExpr.h"
|
||||||
|
#include "MCTargetDesc/AArch64TargetStreamer.h"
|
||||||
#include "Utils/AArch64BaseInfo.h"
|
#include "Utils/AArch64BaseInfo.h"
|
||||||
#include "llvm/ADT/APInt.h"
|
#include "llvm/ADT/APInt.h"
|
||||||
#include "llvm/ADT/STLExtras.h"
|
#include "llvm/ADT/STLExtras.h"
|
||||||
|
@ -13,6 +13,7 @@
|
|||||||
//
|
//
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
|
|
||||||
|
#include "AArch64TargetStreamer.h"
|
||||||
#include "llvm/MC/MCELFStreamer.h"
|
#include "llvm/MC/MCELFStreamer.h"
|
||||||
#include "llvm/ADT/SmallPtrSet.h"
|
#include "llvm/ADT/SmallPtrSet.h"
|
||||||
#include "llvm/ADT/StringExtras.h"
|
#include "llvm/ADT/StringExtras.h"
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
//===- AArch64TargetStreamer.cpp - AArch64TargetStreamer class --*- C++ -*---------===//
|
//===- AArch64TargetStreamer.cpp - AArch64TargetStreamer class ------------===//
|
||||||
//
|
//
|
||||||
// The LLVM Compiler Infrastructure
|
// The LLVM Compiler Infrastructure
|
||||||
//
|
//
|
||||||
@ -10,12 +10,9 @@
|
|||||||
// This file implements the AArch64TargetStreamer class.
|
// This file implements the AArch64TargetStreamer class.
|
||||||
//
|
//
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
#include "llvm/ADT/MapVector.h"
|
|
||||||
#include "llvm/MC/ConstantPools.h"
|
|
||||||
#include "llvm/MC/MCContext.h"
|
|
||||||
#include "llvm/MC/MCExpr.h"
|
|
||||||
#include "llvm/MC/MCStreamer.h"
|
|
||||||
|
|
||||||
|
#include "AArch64TargetStreamer.h"
|
||||||
|
#include "llvm/MC/ConstantPools.h"
|
||||||
using namespace llvm;
|
using namespace llvm;
|
||||||
|
|
||||||
//
|
//
|
||||||
|
42
lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.h
Normal file
42
lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.h
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
//===-- AArch64TargetStreamer.h - AArch64 Target Streamer ------*- C++ -*--===//
|
||||||
|
//
|
||||||
|
// The LLVM Compiler Infrastructure
|
||||||
|
//
|
||||||
|
// This file is distributed under the University of Illinois Open Source
|
||||||
|
// License. See LICENSE.TXT for details.
|
||||||
|
//
|
||||||
|
//===----------------------------------------------------------------------===//
|
||||||
|
|
||||||
|
#ifndef LLVM_LIB_TARGET_AARCH64_MCTARGETDESC_AARCH64TARGETSTREAMER_H
|
||||||
|
#define LLVM_LIB_TARGET_AARCH64_MCTARGETDESC_AARCH64TARGETSTREAMER_H
|
||||||
|
|
||||||
|
#include "llvm/MC/MCStreamer.h"
|
||||||
|
|
||||||
|
namespace llvm {
|
||||||
|
|
||||||
|
class AArch64TargetStreamer : public MCTargetStreamer {
|
||||||
|
public:
|
||||||
|
AArch64TargetStreamer(MCStreamer &S);
|
||||||
|
~AArch64TargetStreamer() override;
|
||||||
|
|
||||||
|
void finish() override;
|
||||||
|
|
||||||
|
/// Callback used to implement the ldr= pseudo.
|
||||||
|
/// Add a new entry to the constant pool for the current section and return an
|
||||||
|
/// MCExpr that can be used to refer to the constant pool location.
|
||||||
|
const MCExpr *addConstantPoolEntry(const MCExpr *, unsigned Size);
|
||||||
|
|
||||||
|
/// Callback used to implemnt the .ltorg directive.
|
||||||
|
/// Emit contents of constant pool for the current section.
|
||||||
|
void emitCurrentConstantPool();
|
||||||
|
|
||||||
|
/// Callback used to implement the .inst directive.
|
||||||
|
virtual void emitInst(uint32_t Inst);
|
||||||
|
|
||||||
|
private:
|
||||||
|
std::unique_ptr<AssemblerConstantPools> ConstantPools;
|
||||||
|
};
|
||||||
|
|
||||||
|
} // end namespace llvm
|
||||||
|
|
||||||
|
#endif
|
Loading…
x
Reference in New Issue
Block a user