]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - tools/yaml2obj/yaml2obj.h
Vendor import of llvm trunk r300422:
[FreeBSD/FreeBSD.git] / tools / yaml2obj / yaml2obj.h
1 //===--- yaml2obj.h - -------------------------------------------*- C++ -*-===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 /// \file
10 /// \brief Common declarations for yaml2obj
11 //===----------------------------------------------------------------------===//
12 #ifndef LLVM_TOOLS_YAML2OBJ_YAML2OBJ_H
13 #define LLVM_TOOLS_YAML2OBJ_YAML2OBJ_H
14
15 namespace llvm {
16 class raw_ostream;
17
18 namespace COFFYAML {
19 struct Object;
20 }
21
22 namespace ELFYAML {
23 struct Object;
24 }
25
26 namespace WasmYAML {
27 struct Object;
28 }
29
30 namespace yaml {
31 class Input;
32 struct YamlObjectFile;
33 }
34 }
35
36 int yaml2coff(llvm::COFFYAML::Object &Doc, llvm::raw_ostream &Out);
37 int yaml2elf(llvm::ELFYAML::Object &Doc, llvm::raw_ostream &Out);
38 int yaml2macho(llvm::yaml::YamlObjectFile &Doc, llvm::raw_ostream &Out);
39 int yaml2wasm(llvm::WasmYAML::Object &Doc, llvm::raw_ostream &Out);
40
41 #endif