1c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot//===--- DWARFEmitter.h - ---------------------------------------*- C++ -*-===// 2c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot// 3c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot// The LLVM Compiler Infrastructure 4c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot// 5c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot// This file is distributed under the University of Illinois Open Source 6c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot// License. See LICENSE.TXT for details. 7c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot// 8c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot//===----------------------------------------------------------------------===// 9c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot/// \file 10c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot/// \brief Common declarations for yaml2obj 11c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot//===----------------------------------------------------------------------===// 12c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot 13c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot#ifndef LLVM_OBJECTYAML_DWARFEMITTER_H 14c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot#define LLVM_OBJECTYAML_DWARFEMITTER_H 15c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot 16c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot#include "llvm/ADT/StringMap.h" 17c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot#include "llvm/ADT/StringRef.h" 18c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot#include "llvm/Support/Error.h" 19c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot#include "llvm/Support/Host.h" 20c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot#include "llvm/Support/MemoryBuffer.h" 21c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot#include <memory> 22c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot 23c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robotnamespace llvm { 24c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot 25c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robotclass raw_ostream; 26c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot 27c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robotnamespace DWARFYAML { 28c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot 29c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robotstruct Data; 30c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robotstruct PubSection; 31c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot 32c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robotvoid EmitDebugAbbrev(raw_ostream &OS, const Data &DI); 33c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robotvoid EmitDebugStr(raw_ostream &OS, const Data &DI); 34c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot 35c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robotvoid EmitDebugAranges(raw_ostream &OS, const Data &DI); 36c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robotvoid EmitPubSection(raw_ostream &OS, const PubSection &Sect, 37c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot bool IsLittleEndian); 38c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robotvoid EmitDebugInfo(raw_ostream &OS, const Data &DI); 39c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robotvoid EmitDebugLine(raw_ostream &OS, const Data &DI); 40c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot 41c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team RobotExpected<StringMap<std::unique_ptr<MemoryBuffer>>> 42c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team RobotEmitDebugSections(StringRef YAMLString, 43c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot bool IsLittleEndian = sys::IsLittleEndianHost); 44c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot 45c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot} // end namespace DWARFYAML 46c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot 47c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot} // end namespace llvm 48c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot 49c9cc9e7d29b8970d8ddb734c88fb62d01e0b727android-build-team Robot#endif // LLVM_OBJECTYAML_DWARFEMITTER_H 50