Mesa (main): anv: advertise rectangularLines only for Gen10+

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri May 6 19:01:57 UTC 2022


Module: Mesa
Branch: main
Commit: b2b810ebff657b3d24d93a1fdbd6adc79bc38153
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b2b810ebff657b3d24d93a1fdbd6adc79bc38153

Author: Chia-I Wu <olvaffe at gmail.com>
Date:   Thu Mar 17 11:03:18 2022 -0700

anv: advertise rectangularLines only for Gen10+

We use the non-strict algorithm (with parallelograms) prior to Gen10 for
wide lines.  We can not advertise rectangularLines.

Signed-off-by: Chia-I Wu <olvaffe at gmail.com>
Fixes: f6e7de41d7b ("anv: Implement VK_EXT_line_rasterization")
Reviewed-by: Ivan Briano <ivan.briano at intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15432>

---

 src/intel/vulkan/anv_device.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/intel/vulkan/anv_device.c b/src/intel/vulkan/anv_device.c
index d67eb0ba3ce..90ca92c12cb 100644
--- a/src/intel/vulkan/anv_device.c
+++ b/src/intel/vulkan/anv_device.c
@@ -1596,7 +1596,11 @@ void anv_GetPhysicalDeviceFeatures2(
       case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT: {
          VkPhysicalDeviceLineRasterizationFeaturesEXT *features =
             (VkPhysicalDeviceLineRasterizationFeaturesEXT *)ext;
-         features->rectangularLines = true;
+         /* Rectangular lines must use the strict algorithm, which is not
+          * supported for wide lines prior to ICL.  See rasterization_mode for
+          * details and how the HW states are programmed.
+          */
+         features->rectangularLines = pdevice->info.ver >= 10;
          features->bresenhamLines = true;
          /* Support for Smooth lines with MSAA was removed on gfx11.  From the
           * BSpec section "Multisample ModesState" table for "AA Line Support



More information about the mesa-commit mailing list