blob: a87325a78df37931ea036281da548adf5419d07e [file] [log] [blame]
Eugene Zelenkoc8fbf6f2017-08-10 00:46:15 +00001//===- AMDGPUKernelCodeTUtils.h - helpers for amd_kernel_code_t -*- C++ -*-===//
Valery Pykhtin499a5c62016-03-06 13:27:13 +00002//
Chandler Carruth2946cd72019-01-19 08:50:56 +00003// 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
Valery Pykhtin499a5c62016-03-06 13:27:13 +00006//
7//===----------------------------------------------------------------------===//
Eugene Zelenkoc8fbf6f2017-08-10 00:46:15 +00008//
Valery Pykhtin499a5c62016-03-06 13:27:13 +00009/// \file AMDKernelCodeTUtils.h
Eugene Zelenkoc8fbf6f2017-08-10 00:46:15 +000010//
Valery Pykhtin499a5c62016-03-06 13:27:13 +000011//===----------------------------------------------------------------------===//
12
Eugene Zelenkoc8fbf6f2017-08-10 00:46:15 +000013#ifndef LLVM_LIB_TARGET_AMDGPU_UTILS_AMDKERNELCODETUTILS_H
14#define LLVM_LIB_TARGET_AMDGPU_UTILS_AMDKERNELCODETUTILS_H
Valery Pykhtin499a5c62016-03-06 13:27:13 +000015
16#include "AMDKernelCodeT.h"
17
18namespace llvm {
19
Valery Pykhtina852d692016-06-23 14:13:06 +000020class MCAsmParser;
Valery Pykhtin499a5c62016-03-06 13:27:13 +000021class raw_ostream;
22class StringRef;
23
Eugene Zelenkoc8fbf6f2017-08-10 00:46:15 +000024void printAmdKernelCodeField(const amd_kernel_code_t &C, int FldIndex,
25 raw_ostream &OS);
Valery Pykhtin499a5c62016-03-06 13:27:13 +000026
Eugene Zelenkoc8fbf6f2017-08-10 00:46:15 +000027void dumpAmdKernelCode(const amd_kernel_code_t *C, raw_ostream &OS,
28 const char *tab);
Valery Pykhtin499a5c62016-03-06 13:27:13 +000029
Eugene Zelenkoc8fbf6f2017-08-10 00:46:15 +000030bool parseAmdKernelCodeField(StringRef ID, MCAsmParser &Parser,
31 amd_kernel_code_t &C, raw_ostream &Err);
Valery Pykhtin499a5c62016-03-06 13:27:13 +000032
Eugene Zelenkoc8fbf6f2017-08-10 00:46:15 +000033} // end namespace llvm
Valery Pykhtin499a5c62016-03-06 13:27:13 +000034
Eugene Zelenkoc8fbf6f2017-08-10 00:46:15 +000035#endif // LLVM_LIB_TARGET_AMDGPU_UTILS_AMDKERNELCODETUTILS_H