if (rb->DepthBits <= 16) { \
GLuint i; \
const GLushort *zRow = (const GLushort *) \
rb->GetPointer(ctx, rb, span.x, span.y); \
for (i = 0; i < span.end; i++) { \
GLuint z = FixedToDepth(span.z); \
if (z < zRow[i]) { \
q->Result++; \
} \
span.z += span.zStep; \
} \
} \
else { \
GLuint i; \
const GLuint *zRow = (const GLuint *) \
rb->GetPointer(ctx, rb, span.x, span.y); \
for (i = 0; i < span.end; i++) { \
if ((GLuint)span.z < zRow[i]) { \
q->Result++; \
} \
span.z += span.zStep; \
} \
}