nir: add AMD RT traversal intrinsics

These I/O intrinsics help to create an enclosed traversal shader.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19188>
This commit is contained in:
Daniel Schürmann 2022-10-14 12:08:05 +02:00 committed by Marge Bot
parent c238699afa
commit 22534e0d1a

View file

@ -1439,6 +1439,22 @@ system_value("ray_launch_size_addr_amd", 1, bit_sizes=[64])
# Scratch base of callable stack for ray tracing.
system_value("rt_dynamic_callable_stack_base_amd", 1)
# Ray Tracing Traversal inputs
system_value("sbt_offset_amd", 1)
system_value("sbt_stride_amd", 1)
system_value("accel_struct_amd", 1, bit_sizes=[64])
# 0. SBT Index
# 1. Ray Tmax
# 2. Primitive Id
# 3. Instance Addr
# 4. Geometry Id and Flags
# 5. Hit Kind
intrinsic("execute_closest_hit_amd", src_comp=[1, 1, 1, 1, 1, 1])
# 0. Ray Tmax
intrinsic("execute_miss_amd", src_comp=[1])
# Load forced VRS rates.
intrinsic("load_force_vrs_rates_amd", dest_comp=1, bit_sizes=[32], flags=[CAN_ELIMINATE, CAN_REORDER])