mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-29 01:46:05 +00:00

Current DWARFLinker implementation does not support some debug sections (mainly DWARF v5 sections). This patch adds diagnostic for such sections. The warning would be displayed for critical(such that could not be removed) sections and the source file would be skipped. Other unsupported sections would be removed and warning message should be displayed. The zero exit status would be returned for both cases. Reviewed By: JDevlieghere Differential Revision: https://reviews.llvm.org/D123623
32 lines
1.0 KiB
C++
32 lines
1.0 KiB
C++
//===- DebugInfoLinker.h ----------------------------------------*- C++ -*-===//
|
|
//
|
|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
// See https://llvm.org/LICENSE.txt for license information.
|
|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef LLVM_TOOLS_LLVM_DWARFUTIL_DEBUGINFOLINKER_H
|
|
#define LLVM_TOOLS_LLVM_DWARFUTIL_DEBUGINFOLINKER_H
|
|
|
|
#include "Options.h"
|
|
#include "llvm/Object/Archive.h"
|
|
#include "llvm/Object/ELFObjectFile.h"
|
|
#include "llvm/Object/ObjectFile.h"
|
|
|
|
namespace llvm {
|
|
namespace dwarfutil {
|
|
|
|
inline bool isDebugSection(StringRef SecName) {
|
|
return SecName.startswith(".debug") || SecName.startswith(".zdebug") ||
|
|
SecName == ".gdb_index";
|
|
}
|
|
|
|
Error linkDebugInfo(object::ObjectFile &file, const Options &Options,
|
|
raw_pwrite_stream &OutStream);
|
|
|
|
} // end of namespace dwarfutil
|
|
} // end of namespace llvm
|
|
|
|
#endif // LLVM_TOOLS_LLVM_DWARFUTIL_DEBUGINFOLINKER_H
|