2016-05-24 10:55:45 +08:00
|
|
|
//===- EhFrame.h ------------------------------------------------*- C++ -*-===//
|
|
|
|
//
|
2019-01-19 16:50:56 +08:00
|
|
|
// 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
|
2016-05-24 10:55:45 +08:00
|
|
|
//
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
|
|
|
|
#ifndef LLD_ELF_EHFRAME_H
|
|
|
|
#define LLD_ELF_EHFRAME_H
|
|
|
|
|
2017-10-03 05:00:41 +08:00
|
|
|
#include "lld/Common/LLVM.h"
|
2016-05-24 10:55:45 +08:00
|
|
|
|
|
|
|
namespace lld {
|
|
|
|
namespace elf {
|
2017-02-23 10:28:28 +08:00
|
|
|
class InputSectionBase;
|
2016-11-23 17:45:17 +08:00
|
|
|
struct EhSectionPiece;
|
|
|
|
|
2017-10-27 11:14:09 +08:00
|
|
|
size_t readEhRecordSize(InputSectionBase *s, size_t off);
|
|
|
|
uint8_t getFdeEncoding(EhSectionPiece *p);
|
2020-08-05 07:05:14 +08:00
|
|
|
bool hasLSDA(const EhSectionPiece &p);
|
2017-07-18 19:55:35 +08:00
|
|
|
} // namespace elf
|
|
|
|
} // namespace lld
|
2016-05-24 10:55:45 +08:00
|
|
|
|
|
|
|
#endif
|