1 //===- XCOFFObjcopy.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_XCOFF_XCOFFOBJCOPY_H 10 #define LLVM_OBJCOPY_XCOFF_XCOFFOBJCOPY_H 11 12 namespace llvm { 13 class Error; 14 class raw_ostream; 15 16 namespace object { 17 class XCOFFObjectFile; 18 } // end namespace object 19 20 namespace objcopy { 21 struct CommonConfig; 22 struct XCOFFConfig; 23 24 namespace xcoff { 25 /// Apply the transformations described by \p Config and \p XCOFFConfig 26 /// to \p In and writes the result into \p Out. 27 /// \returns any Error encountered whilst performing the operation. 28 Error executeObjcopyOnBinary(const CommonConfig &Config, const XCOFFConfig &, 29 object::XCOFFObjectFile &In, raw_ostream &Out); 30 31 } // end namespace xcoff 32 } // end namespace objcopy 33 } // end namespace llvm 34 35 #endif // LLVM_OBJCOPY_XCOFF_XCOFFOBJCOPY_H 36