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