Browse Source

[spirv] Fix assertion statement in SpirvImageOp.

Ehsan Nasiri 6 years ago
parent
commit
42182d5811
1 changed files with 4 additions and 4 deletions
  1. 4 4
      tools/clang/lib/SPIRV/SpirvInstruction.cpp

+ 4 - 4
tools/clang/lib/SPIRV/SpirvInstruction.cpp

@@ -589,7 +589,7 @@ SpirvImageOp::SpirvImageOp(
       op == spv::Op::OpImageSampleDrefExplicitLod ||
       op == spv::Op::OpImageSampleDrefExplicitLod ||
       op == spv::Op::OpImageSparseSampleExplicitLod ||
       op == spv::Op::OpImageSparseSampleExplicitLod ||
       op == spv::Op::OpImageSparseSampleDrefExplicitLod) {
       op == spv::Op::OpImageSparseSampleDrefExplicitLod) {
-    assert(lod != 0);
+    assert(lod || (gradDx && gradDy));
   }
   }
   if (op == spv::Op::OpImageSampleDrefImplicitLod ||
   if (op == spv::Op::OpImageSampleDrefImplicitLod ||
       op == spv::Op::OpImageSampleDrefExplicitLod ||
       op == spv::Op::OpImageSampleDrefExplicitLod ||
@@ -597,13 +597,13 @@ SpirvImageOp::SpirvImageOp(
       op == spv::Op::OpImageSparseSampleDrefExplicitLod ||
       op == spv::Op::OpImageSparseSampleDrefExplicitLod ||
       op == spv::Op::OpImageDrefGather ||
       op == spv::Op::OpImageDrefGather ||
       op == spv::Op::OpImageSparseDrefGather) {
       op == spv::Op::OpImageSparseDrefGather) {
-    assert(dref != 0);
+    assert(dref);
   }
   }
   if (op == spv::Op::OpImageWrite) {
   if (op == spv::Op::OpImageWrite) {
-    assert(texelToWrite != 0);
+    assert(texelToWrite);
   }
   }
   if (op == spv::Op::OpImageGather || op == spv::Op::OpImageSparseGather) {
   if (op == spv::Op::OpImageGather || op == spv::Op::OpImageSparseGather) {
-    assert(component != 0);
+    assert(component);
   }
   }
 }
 }