tgsi: fix false CondStackTop==0 assertion
[mesa.git] / src / gallium / auxiliary / tgsi / tgsi_exec.c
index 298f3d0a8bb1807d375c21b1140181128bbc88da..0757f05dfabb7e528002e5dffb73cb36ddb65a16 100644 (file)
@@ -3239,6 +3239,8 @@ exec_instruction(
 
          if (mach->CallStackTop == 0) {
             /* returning from main() */
+            mach->CondStackTop = 0;
+            mach->LoopStackTop = 0;
             *pc = -1;
             return;
          }
@@ -3767,6 +3769,9 @@ tgsi_exec_machine_run( struct tgsi_exec_machine *mach )
    }
 #endif
 
+   /* Strictly speaking, these assertions aren't really needed but they
+    * can potentially catch some bugs in the control flow code.
+    */
    assert(mach->CondStackTop == 0);
    assert(mach->LoopStackTop == 0);
    assert(mach->ContStackTop == 0);