LLVM  8.0.1
AMDGPUAsmUtils.cpp
Go to the documentation of this file.
1 //===-- AMDGPUAsmUtils.cpp - AsmParser/InstPrinter common -----------------===//
2 //
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 //===----------------------------------------------------------------------===//
9 #include "AMDGPUAsmUtils.h"
10 
11 namespace llvm {
12 namespace AMDGPU {
13 namespace SendMsg {
14 
15 // This must be in sync with llvm::AMDGPU::SendMsg::Id enum members, see SIDefines.h.
16 const char* const IdSymbolic[] = {
17  nullptr,
18  "MSG_INTERRUPT",
19  "MSG_GS",
20  "MSG_GS_DONE",
21  nullptr,
22  nullptr,
23  nullptr,
24  nullptr,
25  nullptr,
26  nullptr,
27  nullptr,
28  nullptr,
29  nullptr,
30  nullptr,
31  nullptr,
32  "MSG_SYSMSG"
33 };
34 
35 // These two must be in sync with llvm::AMDGPU::SendMsg::Op enum members, see SIDefines.h.
36 const char* const OpSysSymbolic[] = {
37  nullptr,
38  "SYSMSG_OP_ECC_ERR_INTERRUPT",
39  "SYSMSG_OP_REG_RD",
40  "SYSMSG_OP_HOST_TRAP_ACK",
41  "SYSMSG_OP_TTRACE_PC"
42 };
43 
44 const char* const OpGsSymbolic[] = {
45  "GS_OP_NOP",
46  "GS_OP_CUT",
47  "GS_OP_EMIT",
48  "GS_OP_EMIT_CUT"
49 };
50 
51 } // namespace SendMsg
52 
53 namespace Hwreg {
54 
55 // This must be in sync with llvm::AMDGPU::Hwreg::ID_SYMBOLIC_FIRST_/LAST_, see SIDefines.h.
56 const char* const IdSymbolic[] = {
57  nullptr,
58  "HW_REG_MODE",
59  "HW_REG_STATUS",
60  "HW_REG_TRAPSTS",
61  "HW_REG_HW_ID",
62  "HW_REG_GPR_ALLOC",
63  "HW_REG_LDS_ALLOC",
64  "HW_REG_IB_STS",
65  nullptr,
66  nullptr,
67  nullptr,
68  nullptr,
69  nullptr,
70  nullptr,
71  nullptr,
72  "HW_REG_SH_MEM_BASES"
73 };
74 
75 } // namespace Hwreg
76 
77 namespace Swizzle {
78 
79 // This must be in sync with llvm::AMDGPU::Swizzle::Id enum members, see SIDefines.h.
80 const char* const IdSymbolic[] = {
81  "QUAD_PERM",
82  "BITMASK_PERM",
83  "SWAP",
84  "REVERSE",
85  "BROADCAST",
86 };
87 
88 } // namespace Swizzle
89 } // namespace AMDGPU
90 } // namespace llvm
This class represents lattice values for constants.
Definition: AllocatorList.h:24
static std::vector< std::pair< int, unsigned > > Swizzle(std::vector< std::pair< int, unsigned >> Src, R600InstrInfo::BankSwizzle Swz)
const char *const IdSymbolic[]
const char *const OpSysSymbolic[]
const char *const OpGsSymbolic[]