blob: ef9f9bdb6bcb1b606d9695fd810a601c51e369fd [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//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
Eugene Zelenkoc8fbf6f2017-08-10 00:46:15 +00009//
Valery Pykhtin499a5c62016-03-06 13:27:13 +000010/// \file AMDKernelCodeTUtils.h
Eugene Zelenkoc8fbf6f2017-08-10 00:46:15 +000011//
Valery Pykhtin499a5c62016-03-06 13:27:13 +000012//===----------------------------------------------------------------------===//
13
Eugene Zelenkoc8fbf6f2017-08-10 00:46:15 +000014#ifndef LLVM_LIB_TARGET_AMDGPU_UTILS_AMDKERNELCODETUTILS_H
15#define LLVM_LIB_TARGET_AMDGPU_UTILS_AMDKERNELCODETUTILS_H
Valery Pykhtin499a5c62016-03-06 13:27:13 +000016
17#include "AMDKernelCodeT.h"
18
19namespace llvm {
20
Valery Pykhtina852d692016-06-23 14:13:06 +000021class MCAsmParser;
Valery Pykhtin499a5c62016-03-06 13:27:13 +000022class raw_ostream;
23class StringRef;
24
Eugene Zelenkoc8fbf6f2017-08-10 00:46:15 +000025void printAmdKernelCodeField(const amd_kernel_code_t &C, int FldIndex,
26 raw_ostream &OS);
Valery Pykhtin499a5c62016-03-06 13:27:13 +000027
Eugene Zelenkoc8fbf6f2017-08-10 00:46:15 +000028void dumpAmdKernelCode(const amd_kernel_code_t *C, raw_ostream &OS,
29 const char *tab);
Valery Pykhtin499a5c62016-03-06 13:27:13 +000030
Eugene Zelenkoc8fbf6f2017-08-10 00:46:15 +000031bool parseAmdKernelCodeField(StringRef ID, MCAsmParser &Parser,
32 amd_kernel_code_t &C, raw_ostream &Err);
Valery Pykhtin499a5c62016-03-06 13:27:13 +000033
Eugene Zelenkoc8fbf6f2017-08-10 00:46:15 +000034} // end namespace llvm
Valery Pykhtin499a5c62016-03-06 13:27:13 +000035
Eugene Zelenkoc8fbf6f2017-08-10 00:46:15 +000036#endif // LLVM_LIB_TARGET_AMDGPU_UTILS_AMDKERNELCODETUTILS_H