+ key |= (uint32_t) ((!!context->rs[D3DRS_FOGENABLE]) << 8);
+ key |= (uint32_t) (device->swvp << 9);
+
+ /* We want to use a 64 bits key for performance.
+ * Use compressed float16 values for the pointsize min/max in the key.
+ * Shaders do not usually output psize.*/
+ if (vs->point_size) {
+ key |= ((uint64_t)util_float_to_half(asfloat(context->rs[D3DRS_POINTSIZE_MIN]))) << 32;
+ key |= ((uint64_t)util_float_to_half(asfloat(context->rs[D3DRS_POINTSIZE_MAX]))) << 48;
+ }