radv: add fast color clear for b10g11r11

This is used in DOOM, so provide the fast clear path for it.

Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
Dave Airlie 2017-02-15 02:26:57 +00:00
parent e6506b3cd2
commit b292e662fc
1 changed files with 5 additions and 0 deletions

View File

@ -30,6 +30,7 @@
#include "util/u_half.h"
#include "util/format_srgb.h"
#include "util/format_r11g11b10f.h"
uint32_t radv_translate_buffer_dataformat(const struct vk_format_description *desc,
int first_non_void)
@ -954,6 +955,10 @@ bool radv_format_pack_clear_color(VkFormat format,
clear_vals[1] = 0;
clear_vals[0] = fui(value->float32[0]);
break;
case VK_FORMAT_B10G11R11_UFLOAT_PACK32:
clear_vals[0] = float3_to_r11g11b10f(value->float32);
clear_vals[1] = 0;
break;
default:
fprintf(stderr, "failed to fast clear %d\n", format);
return false;