Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-src
Path: blob/main/contrib/llvm-project/llvm/lib/Target/PowerPC/MCTargetDesc/PPCXCOFFStreamer.h
35294 views
1
//===- PPCXCOFFStreamer.h - XCOFF Object Output -----------------*- 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
// This is a custom MCXCOFFStreamer for PowerPC.
10
//
11
//===----------------------------------------------------------------------===//
12
13
#ifndef LLVM_LIB_TARGET_PPC_MCXCOFFSTREAMER_PPCXCOFFSTREAMER_H
14
#define LLVM_LIB_TARGET_PPC_MCXCOFFSTREAMER_PPCXCOFFSTREAMER_H
15
16
#include "llvm/MC/MCXCOFFStreamer.h"
17
18
namespace llvm {
19
20
class PPCXCOFFStreamer : public MCXCOFFStreamer {
21
public:
22
PPCXCOFFStreamer(MCContext &Context, std::unique_ptr<MCAsmBackend> MAB,
23
std::unique_ptr<MCObjectWriter> OW,
24
std::unique_ptr<MCCodeEmitter> Emitter);
25
26
void emitInstruction(const MCInst &Inst, const MCSubtargetInfo &STI) override;
27
28
private:
29
void emitPrefixedInstruction(const MCInst &Inst, const MCSubtargetInfo &STI);
30
};
31
32
MCXCOFFStreamer *createPPCXCOFFStreamer(MCContext &Context,
33
std::unique_ptr<MCAsmBackend> MAB,
34
std::unique_ptr<MCObjectWriter> OW,
35
std::unique_ptr<MCCodeEmitter> Emitter);
36
} // end namespace llvm
37
38
#endif // LLVM_LIB_TARGET_PPC_MCXCOFFSTREAMER_PPCXCOFFSTREAMER_H
39
40