| 25 | namespace { |
| 26 | |
| 27 | spv_result_t ValidateUndef(ValidationState_t& _, const Instruction* inst) { |
| 28 | if (_.IsVoidType(inst->type_id())) { |
| 29 | return _.diag(SPV_ERROR_INVALID_ID, inst) |
| 30 | << "Cannot create undefined values with void type"; |
| 31 | } |
| 32 | if (_.HasCapability(spv::Capability::Shader) && |
| 33 | _.ContainsLimitedUseIntOrFloatType(inst->type_id()) && |
| 34 | !_.IsPointerType(inst->type_id())) { |
| 35 | return _.diag(SPV_ERROR_INVALID_ID, inst) |
| 36 | << "Cannot create undefined values with 8- or 16-bit types"; |
| 37 | } |
| 38 | |
| 39 | return SPV_SUCCESS; |
| 40 | } |
| 41 | |
| 42 | spv_result_t ValidateShaderClock(ValidationState_t& _, |
| 43 | const Instruction* inst) { |
no test coverage detected