Lines Matching refs:SPIRV

15 #include "SPIRV.h"
99 auto MIB = MIRBuilder.buildInstr(SPIRV::OpName).addUse(Target);
114 SPIRV::Decoration::Decoration Dec,
116 auto MIB = MIRBuilder.buildInstr(SPIRV::OpDecorate)
123 SPIRV::Decoration::Decoration Dec,
126 auto MIB = BuildMI(MBB, I, I.getDebugLoc(), TII.get(SPIRV::OpDecorate))
134 unsigned storageClassToAddressSpace(SPIRV::StorageClass::StorageClass SC) {
136 case SPIRV::StorageClass::Function:
138 case SPIRV::StorageClass::CrossWorkgroup:
140 case SPIRV::StorageClass::UniformConstant:
142 case SPIRV::StorageClass::Workgroup:
144 case SPIRV::StorageClass::Generic:
146 case SPIRV::StorageClass::Input:
153 SPIRV::StorageClass::StorageClass
157 return SPIRV::StorageClass::Function;
159 return SPIRV::StorageClass::CrossWorkgroup;
161 return SPIRV::StorageClass::UniformConstant;
163 return SPIRV::StorageClass::Workgroup;
165 return SPIRV::StorageClass::Generic;
167 return SPIRV::StorageClass::Input;
173 SPIRV::MemorySemantics::MemorySemantics
174 getMemSemanticsForStorageClass(SPIRV::StorageClass::StorageClass SC) {
176 case SPIRV::StorageClass::StorageBuffer:
177 case SPIRV::StorageClass::Uniform:
178 return SPIRV::MemorySemantics::UniformMemory;
179 case SPIRV::StorageClass::Workgroup:
180 return SPIRV::MemorySemantics::WorkgroupMemory;
181 case SPIRV::StorageClass::CrossWorkgroup:
182 return SPIRV::MemorySemantics::CrossWorkgroupMemory;
183 case SPIRV::StorageClass::AtomicCounter:
184 return SPIRV::MemorySemantics::AtomicCounterMemory;
185 case SPIRV::StorageClass::Image:
186 return SPIRV::MemorySemantics::ImageMemory;
188 return SPIRV::MemorySemantics::None;
192 SPIRV::MemorySemantics::MemorySemantics getMemSemantics(AtomicOrdering Ord) {
195 return SPIRV::MemorySemantics::Acquire;
197 return SPIRV::MemorySemantics::Release;
199 return SPIRV::MemorySemantics::AcquireRelease;
201 return SPIRV::MemorySemantics::SequentiallyConsistent;
205 return SPIRV::MemorySemantics::None;
218 } else if (ConstInstr->getOpcode() == SPIRV::ASSIGN_TYPE) {