xref: /freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/Utils/AMDGPUAsmUtils.h (revision 5def4c47d4bd90b209b9b4a4ba9faec15846d8fd)
1 //===-- AMDGPUAsmUtils.h - AsmParser/InstPrinter common ---------*- C++ -*-===//
2 //
3 // 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
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #ifndef LLVM_LIB_TARGET_AMDGPU_UTILS_AMDGPUASMUTILS_H
10 #define LLVM_LIB_TARGET_AMDGPU_UTILS_AMDGPUASMUTILS_H
11 
12 namespace llvm {
13 
14 class StringLiteral;
15 
16 namespace AMDGPU {
17 
18 namespace SendMsg { // Symbolic names for the sendmsg(...) syntax.
19 
20 extern const char* const IdSymbolic[];
21 extern const char* const OpSysSymbolic[];
22 extern const char* const OpGsSymbolic[];
23 
24 } // namespace SendMsg
25 
26 namespace Hwreg { // Symbolic names for the hwreg(...) syntax.
27 
28 extern const char* const IdSymbolic[];
29 
30 } // namespace Hwreg
31 
32 namespace MTBUFFormat {
33 
34 extern StringLiteral const DfmtSymbolic[];
35 extern StringLiteral const NfmtSymbolicGFX10[];
36 extern StringLiteral const NfmtSymbolicSICI[];
37 extern StringLiteral const NfmtSymbolicVI[];
38 extern StringLiteral const UfmtSymbolic[];
39 extern unsigned const DfmtNfmt2UFmt[];
40 
41 } // namespace MTBUFFormat
42 
43 namespace Swizzle { // Symbolic names for the swizzle(...) syntax.
44 
45 extern const char* const IdSymbolic[];
46 
47 } // namespace Swizzle
48 
49 namespace VGPRIndexMode { // Symbolic names for the gpr_idx(...) syntax.
50 
51 extern const char* const IdSymbolic[];
52 
53 } // namespace VGPRIndexMode
54 
55 } // namespace AMDGPU
56 } // namespace llvm
57 
58 #endif
59