summaryrefslogtreecommitdiff
path: root/lib/SPIRV/Mangler/ManglingUtils.h
blob: 6a6b0e82f61b40a8bee3a4499f69d230e6a4c873 (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 SPIRV_MANGLER_MANGLINGUTILS_H
#define SPIRV_MANGLER_MANGLINGUTILS_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 // SPIRV_MANGLER_MANGLINGUTILS_H