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

Author: Bas Nieuwenhuizen <[email protected]>
Date:   Tue Apr  6 11:30:34 2021 +0200

nir: Add bvh64_intersect_ray_amd intrinsic.

Reviewed-by: Daniel Schürmann <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10818>

---

 src/compiler/nir/nir_divergence_analysis.c | 1 +
 src/compiler/nir/nir_intrinsics.py         | 8 ++++++++
 2 files changed, 9 insertions(+)

diff --git a/src/compiler/nir/nir_divergence_analysis.c 
b/src/compiler/nir/nir_divergence_analysis.c
index 8d4d6abdbed..9777ee71b15 100644
--- a/src/compiler/nir/nir_divergence_analysis.c
+++ b/src/compiler/nir/nir_divergence_analysis.c
@@ -320,6 +320,7 @@ visit_intrinsic(nir_shader *shader, nir_intrinsic_instr 
*instr)
    case nir_intrinsic_is_sparse_texels_resident:
    case nir_intrinsic_sparse_residency_code_and:
    case nir_intrinsic_load_sbt_amd:
+   case nir_intrinsic_bvh64_intersect_ray_amd:
    case nir_intrinsic_get_ubo_size:
    case nir_intrinsic_load_ssbo_address: {
       unsigned num_srcs = nir_intrinsic_infos[instr->intrinsic].num_srcs;
diff --git a/src/compiler/nir/nir_intrinsics.py 
b/src/compiler/nir/nir_intrinsics.py
index 30b5397163d..072a366c786 100644
--- a/src/compiler/nir/nir_intrinsics.py
+++ b/src/compiler/nir/nir_intrinsics.py
@@ -1153,6 +1153,14 @@ intrinsic("alloc_vertices_and_primitives_amd", 
src_comp=[1, 1], indices=[])
 intrinsic("load_sbt_amd", src_comp=[-1], dest_comp=0, indices=[BINDING, BASE],
           flags=[CAN_ELIMINATE, CAN_REORDER])
 
+# 1. HW descriptor
+# 2. BVH node(64-bit pointer as 2x32 ...)
+# 3. ray extent
+# 4. ray origin
+# 5. ray direction
+# 6. inverse ray direction (componentwise 1.0/ray direction)
+intrinsic("bvh64_intersect_ray_amd", [4, 2, 1, 3, 3, 3], 4, 
flags=[CAN_ELIMINATE, CAN_REORDER])
+
 # V3D-specific instrinc for tile buffer color reads.
 #
 # The hardware requires that we read the samples and components of a pixel

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to