summaryrefslogtreecommitdiff
path: root/lib/SPIRV/Mangler/ManglingUtils.h
blob: a33b8364ce1d5bb5fbcca5894c3aa43859c0a6cc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
//===------------------------- ManglingUtils.h ---------------------------===//
//
//                              SPIR Tools
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===---------------------------------------------------------------------===//
/*
 * Contributed by: Intel Corporation.
 */

#ifndef __MANGLING_UTILS_H__
#define __MANGLING_UTILS_H__

#include "ParameterType.h"

namespace SPIR {

const char *mangledPrimitiveString(TypePrimitiveEnum primitive);
const char *readablePrimitiveString(TypePrimitiveEnum primitive);

const char *getMangledAttribute(TypeAttributeEnum attribute);
const char *getReadableAttribute(TypeAttributeEnum attribute);

SPIRversion getSupportedVersion(TypePrimitiveEnum t);
const char *getSPIRVersionAsString(SPIRversion version);

const char *mangledPrimitiveStringfromName(std::string type);

bool isPipeBuiltin(std::string unmangledName);
} // namespace SPIR

#endif //__MANGLING_UTILS_H__