LLVM 20.0.0git
ELFObjcopy.h
Go to the documentation of this file.
1//===- ELFObjcopy.h ---------------------------------------------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#ifndef LLVM_OBJCOPY_ELF_ELFOBJCOPY_H
10#define LLVM_OBJCOPY_ELF_ELFOBJCOPY_H
11
12namespace llvm {
13class Error;
14class MemoryBuffer;
15class raw_ostream;
16
17namespace object {
18class ELFObjectFileBase;
19} // end namespace object
20
21namespace objcopy {
22struct CommonConfig;
23struct ELFConfig;
24
25namespace elf {
26/// Apply the transformations described by \p Config and \p ELFConfig to
27/// \p In, which must represent an IHex file, and writes the result
28/// into \p Out.
29/// \returns any Error encountered whilst performing the operation.
32 raw_ostream &Out);
33
34/// Apply the transformations described by \p Config and \p ELFConfig to
35/// \p In, which is treated as a raw binary input, and writes the result
36/// into \p Out.
37/// \returns any Error encountered whilst performing the operation.
40 raw_ostream &Out);
41
42/// Apply the transformations described by \p Config and \p ELFConfig to
43/// \p In and writes the result into \p Out.
44/// \returns any Error encountered whilst performing the operation.
46 const ELFConfig &ELFConfig,
48
49} // end namespace elf
50} // end namespace objcopy
51} // end namespace llvm
52
53#endif // LLVM_OBJCOPY_ELF_ELFOBJCOPY_H
RelaxConfig Config
Definition: ELF_riscv.cpp:506
Lightweight error class with error context and mandatory checking.
Definition: Error.h:160
This interface provides simple read-only access to a block of memory, and provides simple methods for...
Definition: MemoryBuffer.h:51
This class implements an extremely fast bulk output stream that can only output to a stream.
Definition: raw_ostream.h:52
Error executeObjcopyOnIHex(const CommonConfig &Config, const ELFConfig &ELFConfig, MemoryBuffer &In, raw_ostream &Out)
Apply the transformations described by Config and ELFConfig to In, which must represent an IHex file,...
Definition: ELFObjcopy.cpp:933
Error executeObjcopyOnBinary(const CommonConfig &Config, const ELFConfig &ELFConfig, object::ELFObjectFileBase &In, raw_ostream &Out)
Apply the transformations described by Config and ELFConfig to In and writes the result into Out.
Definition: ELFObjcopy.cpp:966
Error executeObjcopyOnRawBinary(const CommonConfig &Config, const ELFConfig &ELFConfig, MemoryBuffer &In, raw_ostream &Out)
Apply the transformations described by Config and ELFConfig to In, which is treated as a raw binary i...
Definition: ELFObjcopy.cpp:948
This is an optimization pass for GlobalISel generic memory operations.
Definition: AddressRanges.h:18