diff options
Diffstat (limited to 'source/val/validate_ray_tracing.cpp')
-rw-r--r-- | source/val/validate_ray_tracing.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/source/val/validate_ray_tracing.cpp b/source/val/validate_ray_tracing.cpp index 78bac19b5..5b5c8da1e 100644 --- a/source/val/validate_ray_tracing.cpp +++ b/source/val/validate_ray_tracing.cpp @@ -112,8 +112,10 @@ spv_result_t RayTracingPass(ValidationState_t& _, const Instruction* inst) { if (payload->opcode() != SpvOpVariable) { return _.diag(SPV_ERROR_INVALID_DATA, inst) << "Payload must be the result of a OpVariable"; - } else if (payload->word(3) != SpvStorageClassRayPayloadKHR && - payload->word(3) != SpvStorageClassIncomingRayPayloadKHR) { + } else if (payload->GetOperandAs<uint32_t>(2) != + SpvStorageClassRayPayloadKHR && + payload->GetOperandAs<uint32_t>(2) != + SpvStorageClassIncomingRayPayloadKHR) { return _.diag(SPV_ERROR_INVALID_DATA, inst) << "Payload must have storage class RayPayloadKHR or " "IncomingRayPayloadKHR"; @@ -185,8 +187,9 @@ spv_result_t RayTracingPass(ValidationState_t& _, const Instruction* inst) { if (callable_data->opcode() != SpvOpVariable) { return _.diag(SPV_ERROR_INVALID_DATA, inst) << "Callable Data must be the result of a OpVariable"; - } else if (callable_data->word(3) != SpvStorageClassCallableDataKHR && - callable_data->word(3) != + } else if (callable_data->GetOperandAs<uint32_t>(2) != + SpvStorageClassCallableDataKHR && + callable_data->GetOperandAs<uint32_t>(2) != SpvStorageClassIncomingCallableDataKHR) { return _.diag(SPV_ERROR_INVALID_DATA, inst) << "Callable Data must have storage class CallableDataKHR or " |