}
break;
+ case GL_ANY_SAMPLES_PASSED:
+ /* Set true if any of the sub-queries passed. */
+ for (i = query->first_index; i <= query->last_index; i++) {
+ if (results[i * 2 + 1] != results[i * 2]) {
+ query->Base.Result = GL_TRUE;
+ break;
+ }
+ }
+ break;
+
case GL_PRIMITIVES_GENERATED:
case GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN:
/* We don't actually query the hardware for this value, so query->bo
write_timestamp(intel, query->bo, 0);
break;
+ case GL_ANY_SAMPLES_PASSED:
case GL_SAMPLES_PASSED_ARB:
/* Reset our driver's tracking of query state. */
drm_intel_bo_unreference(query->bo);
write_timestamp(intel, query->bo, 1);
break;
+ case GL_ANY_SAMPLES_PASSED:
case GL_SAMPLES_PASSED_ARB:
if (query->bo) {
brw_emit_query_end(brw);