1 //===- ELFObjcopy.h ---------------------------------------------*- C++ -*-===//
2 //
3 //                      The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 
10 #ifndef LLVM_TOOLS_OBJCOPY_ELFOBJCOPY_H
11 #define LLVM_TOOLS_OBJCOPY_ELFOBJCOPY_H
12 
13 namespace llvm {
14 class MemoryBuffer;
15 
16 namespace object {
17 class ELFObjectFileBase;
18 } // end namespace object
19 
20 namespace objcopy {
21 struct CopyConfig;
22 class Buffer;
23 
24 namespace elf {
25 void executeObjcopyOnRawBinary(const CopyConfig &Config, MemoryBuffer &In,
26                                Buffer &Out);
27 void executeObjcopyOnBinary(const CopyConfig &Config,
28                             object::ELFObjectFileBase &In, Buffer &Out);
29 
30 } // end namespace elf
31 } // end namespace objcopy
32 } // end namespace llvm
33 
34 #endif // LLVM_TOOLS_OBJCOPY_ELFOBJCOPY_H
35