1*0eae32dcSDimitry Andric //===--- HIPUtility.h - Common HIP Tool Chain Utilities ---------*- C++ -*-===// 2*0eae32dcSDimitry Andric // 3*0eae32dcSDimitry Andric // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4*0eae32dcSDimitry Andric // See https://llvm.org/LICENSE.txt for license information. 5*0eae32dcSDimitry Andric // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6*0eae32dcSDimitry Andric // 7*0eae32dcSDimitry Andric //===----------------------------------------------------------------------===// 8*0eae32dcSDimitry Andric 9*0eae32dcSDimitry Andric #ifndef LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_HIPUTILITY_H 10*0eae32dcSDimitry Andric #define LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_HIPUTILITY_H 11*0eae32dcSDimitry Andric 12*0eae32dcSDimitry Andric #include "clang/Driver/Tool.h" 13*0eae32dcSDimitry Andric 14*0eae32dcSDimitry Andric namespace clang { 15*0eae32dcSDimitry Andric namespace driver { 16*0eae32dcSDimitry Andric namespace tools { 17*0eae32dcSDimitry Andric namespace HIP { 18*0eae32dcSDimitry Andric 19*0eae32dcSDimitry Andric // Construct command for creating HIP fatbin. 20*0eae32dcSDimitry Andric void constructHIPFatbinCommand(Compilation &C, const JobAction &JA, 21*0eae32dcSDimitry Andric StringRef OutputFileName, 22*0eae32dcSDimitry Andric const InputInfoList &Inputs, 23*0eae32dcSDimitry Andric const llvm::opt::ArgList &TCArgs, const Tool &T); 24*0eae32dcSDimitry Andric 25*0eae32dcSDimitry Andric // Construct command for creating Object from HIP fatbin. 26*0eae32dcSDimitry Andric void constructGenerateObjFileFromHIPFatBinary( 27*0eae32dcSDimitry Andric Compilation &C, const InputInfo &Output, const InputInfoList &Inputs, 28*0eae32dcSDimitry Andric const llvm::opt::ArgList &Args, const JobAction &JA, const Tool &T); 29*0eae32dcSDimitry Andric 30*0eae32dcSDimitry Andric } // namespace HIP 31*0eae32dcSDimitry Andric } // namespace tools 32*0eae32dcSDimitry Andric } // namespace driver 33*0eae32dcSDimitry Andric } // namespace clang 34*0eae32dcSDimitry Andric 35*0eae32dcSDimitry Andric #endif // LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_HIPUTILITY_H 36