anv: Fast clear depth/stencil surface in vkCmdClearAttachments

Instead of doing a slow depth clear, we can do depth fast clear in
vkClearAttachments.

v2: (Nanley Chery)
- Clear stencil surface along with depth.
- Check for multilayer resources.
- Lookout for state.attachments.
- Fallback on slow clear for BDW and CHV if conditional rendering
  enabled.
- Keep flush in same function.

v3: (Nanley Chery)
- Return immediately after fast clearing.
- Remove unnecessary comment.

v4: (Nanley Chery)
- Add assertion for BLORP_BATCH_NO_EMIT_DEPTH_STENCIL.
- Remove unnecessary local variable.
- Add 3DSTATE_WM_HZ_OP comment.

v5: (Nanley Chery)
- Fix comments.
- Don't take fast depth clear path if BLORP_BATCH_PREDICATE_ENABLE set.
- Refactor code in can_hiz_clear_att.

Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com>
Status Job ID Name Coverage
  Container+Docs
manual #4790239
aarch64 manual
arm_build
manual #4790240
manual
arm_test-base
manual #4790236
manual
x86_build-base
manual #4790238
manual
x86_build_old
manual #4790237
manual
x86_test-base
 
  Container 2
created #4790250
arm64_test
created #4790245
i386_build
created #4790241
kernel+rootfs_amd64
created #4790242
aarch64
kernel+rootfs_arm64
created #4790243
aarch64
kernel+rootfs_armhf
created #4790246
ppc64el_build
created #4790247
s390x_build
created #4790244
x86_build
created #4790248
x86_test-gl
created #4790249
x86_test-vk
 
  Meson X86 64
created #4790255
meson-android
created #4790256
meson-clang
created #4790254
meson-classic
created #4790257
meson-clover
created #4790252
meson-gallium
created #4790253
meson-release
created #4790251
meson-testing
created #4790258
meson-vulkan
 
  Scons
created #4790259
allowed to fail
scons-win64
 
  Meson Misc
created #4790261
aarch64
meson-arm64
created #4790262
aarch64
meson-arm64-build-test
created #4790260
aarch64
meson-armhf
created #4790263
meson-i386
created #4790266
meson-mingw32-x86_64
created #4790265
kvm
meson-ppc64el
created #4790264
kvm
meson-s390x