diff --git a/llvm/tools/llvm-symbolizer/LLVMSymbolize.h b/llvm/include/llvm/DebugInfo/Symbolize/Symbolize.h similarity index 95% rename from llvm/tools/llvm-symbolizer/LLVMSymbolize.h rename to llvm/include/llvm/DebugInfo/Symbolize/Symbolize.h index 17df56e695ab..c58c51b02395 100644 --- a/llvm/tools/llvm-symbolizer/LLVMSymbolize.h +++ b/llvm/include/llvm/DebugInfo/Symbolize/Symbolize.h @@ -1,4 +1,4 @@ -//===-- LLVMSymbolize.h ----------------------------------------- C++ -----===// +//===-- Symbolize.h --------------------------------------------- C++ -----===// // // The LLVM Compiler Infrastructure // @@ -10,8 +10,8 @@ // Header for LLVM symbolization library. // //===----------------------------------------------------------------------===// -#ifndef LLVM_TOOLS_LLVM_SYMBOLIZER_LLVMSYMBOLIZE_H -#define LLVM_TOOLS_LLVM_SYMBOLIZER_LLVMSYMBOLIZE_H +#ifndef LLVM_DEBUGINFO_SYMBOLIZE_SYMBOLIZE_H +#define LLVM_DEBUGINFO_SYMBOLIZE_SYMBOLIZE_H #include "llvm/ADT/SmallVector.h" #include "llvm/DebugInfo/DIContext.h" @@ -24,12 +24,10 @@ #include namespace llvm { - -typedef DILineInfoSpecifier::FunctionNameKind FunctionNameKind; -using namespace object; - namespace symbolize { +using namespace object; +using FunctionNameKind = DILineInfoSpecifier::FunctionNameKind; class ModuleInfo; class LLVMSymbolizer { diff --git a/llvm/lib/DebugInfo/CMakeLists.txt b/llvm/lib/DebugInfo/CMakeLists.txt index 645d92fef228..86f0efe22266 100644 --- a/llvm/lib/DebugInfo/CMakeLists.txt +++ b/llvm/lib/DebugInfo/CMakeLists.txt @@ -1,4 +1,3 @@ - add_subdirectory(DWARF) add_subdirectory(PDB) - +add_subdirectory(Symbolize) diff --git a/llvm/lib/DebugInfo/LLVMBuild.txt b/llvm/lib/DebugInfo/LLVMBuild.txt index 7a8e8baec2c7..fbffe3a06916 100644 --- a/llvm/lib/DebugInfo/LLVMBuild.txt +++ b/llvm/lib/DebugInfo/LLVMBuild.txt @@ -16,7 +16,7 @@ ;===------------------------------------------------------------------------===; [common] -subdirectories = DWARF PDB +subdirectories = DWARF PDB Symbolize [component_0] type = Group diff --git a/llvm/lib/DebugInfo/Makefile b/llvm/lib/DebugInfo/Makefile index 27a5e1f0f496..20e9495b4335 100644 --- a/llvm/lib/DebugInfo/Makefile +++ b/llvm/lib/DebugInfo/Makefile @@ -10,6 +10,6 @@ LEVEL = ../.. include $(LEVEL)/Makefile.config -PARALLEL_DIRS := DWARF PDB +PARALLEL_DIRS := DWARF PDB Symbolize -include $(LEVEL)/Makefile.common \ No newline at end of file +include $(LEVEL)/Makefile.common diff --git a/llvm/lib/DebugInfo/Symbolize/CMakeLists.txt b/llvm/lib/DebugInfo/Symbolize/CMakeLists.txt new file mode 100644 index 000000000000..0e43eaa977c4 --- /dev/null +++ b/llvm/lib/DebugInfo/Symbolize/CMakeLists.txt @@ -0,0 +1,6 @@ +add_llvm_library(LLVMSymbolize + Symbolize.cpp + + ADDITIONAL_HEADER_DIRS + ${LLVM_MAIN_INCLUDE_DIR}/llvm/DebugInfo/Symbolize + ) diff --git a/llvm/lib/DebugInfo/Symbolize/LLVMBuild.txt b/llvm/lib/DebugInfo/Symbolize/LLVMBuild.txt new file mode 100644 index 000000000000..f9ec6b32f6d9 --- /dev/null +++ b/llvm/lib/DebugInfo/Symbolize/LLVMBuild.txt @@ -0,0 +1,22 @@ +;===- ./lib/DebugInfo/Symbolize/LLVMBuild.txt ------------------*- Conf -*--===; +; +; The LLVM Compiler Infrastructure +; +; This file is distributed under the University of Illinois Open Source +; License. See LICENSE.TXT for details. +; +;===------------------------------------------------------------------------===; +; +; This is an LLVMBuild description file for the components in this subdirectory. +; +; For more information on the LLVMBuild system, please see: +; +; http://llvm.org/docs/LLVMBuild.html +; +;===------------------------------------------------------------------------===; + +[component_0] +type = Library +name = Symbolize +parent = DebugInfo +required_libraries = DebugInfoDWARF DebugInfoPDB Object Support diff --git a/llvm/lib/DebugInfo/Symbolize/Makefile b/llvm/lib/DebugInfo/Symbolize/Makefile new file mode 100644 index 000000000000..17aac9396585 --- /dev/null +++ b/llvm/lib/DebugInfo/Symbolize/Makefile @@ -0,0 +1,15 @@ +##===- lib/DebugInfo/Symbolize/Makefile --------------------*- Makefile -*-===## +# +# The LLVM Compiler Infrastructure +# +# This file is distributed under the University of Illinois Open Source +# License. See LICENSE.TXT for details. +# +##===----------------------------------------------------------------------===## + +LEVEL = ../../.. +LIBRARYNAME = LLVMSymbolize +BUILD_ARCHIVE := 1 + +include $(LEVEL)/Makefile.common + diff --git a/llvm/tools/llvm-symbolizer/LLVMSymbolize.cpp b/llvm/lib/DebugInfo/Symbolize/Symbolize.cpp similarity index 99% rename from llvm/tools/llvm-symbolizer/LLVMSymbolize.cpp rename to llvm/lib/DebugInfo/Symbolize/Symbolize.cpp index 51bb965b8df4..ffe3747db0c4 100644 --- a/llvm/tools/llvm-symbolizer/LLVMSymbolize.cpp +++ b/llvm/lib/DebugInfo/Symbolize/Symbolize.cpp @@ -11,7 +11,8 @@ // //===----------------------------------------------------------------------===// -#include "LLVMSymbolize.h" +#include "llvm/DebugInfo/Symbolize/Symbolize.h" + #include "llvm/ADT/STLExtras.h" #include "llvm/Config/config.h" #include "llvm/DebugInfo/DWARF/DWARFContext.h" @@ -45,6 +46,7 @@ namespace llvm { namespace symbolize { +// FIXME: Move this to llvm-symbolizer tool. static bool error(std::error_code ec) { if (!ec) return false; diff --git a/llvm/tools/llvm-symbolizer/CMakeLists.txt b/llvm/tools/llvm-symbolizer/CMakeLists.txt index 5df3b17a065e..b04c45ff7442 100644 --- a/llvm/tools/llvm-symbolizer/CMakeLists.txt +++ b/llvm/tools/llvm-symbolizer/CMakeLists.txt @@ -8,9 +8,9 @@ set(LLVM_LINK_COMPONENTS DebugInfoPDB Object Support + Symbolize ) add_llvm_tool(llvm-symbolizer - LLVMSymbolize.cpp llvm-symbolizer.cpp ) diff --git a/llvm/tools/llvm-symbolizer/Makefile b/llvm/tools/llvm-symbolizer/Makefile index de75befb1c97..8272d61280c7 100644 --- a/llvm/tools/llvm-symbolizer/Makefile +++ b/llvm/tools/llvm-symbolizer/Makefile @@ -9,7 +9,7 @@ LEVEL := ../.. TOOLNAME := llvm-symbolizer -LINK_COMPONENTS := DebugInfoDWARF DebugInfoPDB Object +LINK_COMPONENTS := DebugInfoDWARF DebugInfoPDB Object Support Symbolize # This tool has no plugins, optimize startup time. TOOL_NO_EXPORTS := 1 diff --git a/llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp b/llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp index e773f04f02e2..5784e6ba5d97 100644 --- a/llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp +++ b/llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp @@ -15,8 +15,8 @@ // //===----------------------------------------------------------------------===// -#include "LLVMSymbolize.h" #include "llvm/ADT/StringRef.h" +#include "llvm/DebugInfo/Symbolize/Symbolize.h" #include "llvm/Support/COM.h" #include "llvm/Support/CommandLine.h" #include "llvm/Support/Debug.h"