OpenGL ES 2.0 is commonly used on mobile devices, which are resource limited and most of them use tile-based rendering system(TBRS) for decreasing of resource usage. Traditional architecture immediately starts to render each polygon in the scene buffer. TBRS will try to render only those pixels that are visible. At first, it determines in what tile(32×32 and 16×16 are standard tile sizes) a triangle is located by looking at the bounding box of the triangle, each tile has its own buffer where it stores numbers of visible triangles for that tile, then each tile sorts(by hardware) them and fills its own z-buffer.
When each tile is completely rendered it can be transferred to the big frame buffer in the graphics memory. Then stencil will write it’s own 8 bits.
Also there is an interesting detail – if you use texkill the optimization system and hardware HSR stops working and the depth-buffer will be filled again.
Thanks to gamedeff-chat, where was interesting talk about this theme.