39 lines · cpp
1//===-------- AMDGPUELFStreamer.cpp - ELF Object Output -------------------===//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-exception6//7//===----------------------------------------------------------------------===//8 9#include "AMDGPUELFStreamer.h"10#include "llvm/MC/MCAsmBackend.h"11#include "llvm/MC/MCCodeEmitter.h"12#include "llvm/MC/MCELFStreamer.h"13#include "llvm/MC/MCObjectWriter.h"14 15using namespace llvm;16 17namespace {18 19class AMDGPUELFStreamer : public MCELFStreamer {20public:21 AMDGPUELFStreamer(const Triple &T, MCContext &Context,22 std::unique_ptr<MCAsmBackend> MAB,23 std::unique_ptr<MCObjectWriter> OW,24 std::unique_ptr<MCCodeEmitter> Emitter)25 : MCELFStreamer(Context, std::move(MAB), std::move(OW),26 std::move(Emitter)) {}27};28 29} // anonymous namespace30 31MCELFStreamer *32llvm::createAMDGPUELFStreamer(const Triple &T, MCContext &Context,33 std::unique_ptr<MCAsmBackend> MAB,34 std::unique_ptr<MCObjectWriter> OW,35 std::unique_ptr<MCCodeEmitter> Emitter) {36 return new AMDGPUELFStreamer(T, Context, std::move(MAB), std::move(OW),37 std::move(Emitter));38}39