1 //===- WasmObjcopy.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_WASM_WASMOBJCOPY_H 10 #define LLVM_OBJCOPY_WASM_WASMOBJCOPY_H 11 12 namespace llvm { 13 class Error; 14 class raw_ostream; 15 16 namespace object { 17 class WasmObjectFile; 18 } // end namespace object 19 20 namespace objcopy { 21 struct CommonConfig; 22 struct WasmConfig; 23 24 namespace wasm { 25 /// Apply the transformations described by \p Config and \p WasmConfig 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 WasmConfig &, 29 object::WasmObjectFile &In, raw_ostream &Out); 30 31 } // end namespace wasm 32 } // end namespace objcopy 33 } // end namespace llvm 34 35 #endif // LLVM_OBJCOPY_WASM_WASMOBJCOPY_H 36