MCPcopy Create free account
hub / github.com/KhronosGroup/SPIRV-Tools / PipePass

Function PipePass

source/val/validate_pipe.cpp:316–350  ·  view source on GitHub ↗

Validates correctness of pipe instructions.

Source from the content-addressed store, hash-verified

314
315// Validates correctness of pipe instructions.
316spv_result_t PipePass(ValidationState_t& _, const Instruction* inst) {
317 switch (inst->opcode()) {
318 case spv::Op::OpReadPipe:
319 case spv::Op::OpWritePipe:
320 return ValidateReadWritePipe(_, inst);
321 case spv::Op::OpReservedReadPipe:
322 case spv::Op::OpReservedWritePipe:
323 return ValidateReservedReadWritePipe(_, inst);
324 case spv::Op::OpReserveReadPipePackets:
325 case spv::Op::OpReserveWritePipePackets:
326 return ValidateReservePackets(_, inst);
327 case spv::Op::OpGroupReserveReadPipePackets:
328 case spv::Op::OpGroupReserveWritePipePackets:
329 return ValidateGroupReservePackets(_, inst);
330 case spv::Op::OpCommitReadPipe:
331 case spv::Op::OpCommitWritePipe:
332 return ValidateCommitPipe(_, inst);
333 case spv::Op::OpGroupCommitReadPipe:
334 case spv::Op::OpGroupCommitWritePipe:
335 return ValidateGroupCommitPipe(_, inst);
336 case spv::Op::OpGetNumPipePackets:
337 case spv::Op::OpGetMaxPipePackets:
338 return ValidatePipePacketsQuery(_, inst);
339 case spv::Op::OpIsValidReserveId:
340 return ValidateIsValidReserveId(_, inst);
341 case spv::Op::OpCreatePipeFromPipeStorage:
342 return ValidateCreatePipeFromPipeStorage(_, inst);
343 case spv::Op::OpConstantPipeStorage:
344 return ValidateConstantPipeStorage(_, inst);
345 default:
346 break;
347 }
348
349 return SPV_SUCCESS;
350}
351
352} // namespace val
353} // namespace spvtools

Calls 11

ValidateReadWritePipeFunction · 0.85
ValidateReservePacketsFunction · 0.85
ValidateCommitPipeFunction · 0.85
ValidateGroupCommitPipeFunction · 0.85
ValidatePipePacketsQueryFunction · 0.85
ValidateIsValidReserveIdFunction · 0.85
opcodeMethod · 0.45

Tested by

no test coverage detected