mesa/src/amd/llvm
Marek Olšák d9173b3b46 ac/llvm: rework how negative W affects culling to not call accept_func twice
Always execute the bbox code regardless of negative W, and then simply
use || to discard the result if any W is negative. This is expected to be
rare. (it only happens when a primitive intersects the near plane)

This allows us to eliminate the else statement, which is no longer
executed for accepted primitives with negative W, which are the only
primitives that needed the else branch.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11754>
2021-07-08 18:37:41 +00:00
..
ac_llvm_build.c amd: Add extra source to the mbcnt_amd NIR intrinsic. 2021-06-09 16:48:51 +00:00
ac_llvm_build.h amd: Add extra source to the mbcnt_amd NIR intrinsic. 2021-06-09 16:48:51 +00:00
ac_llvm_cull.c ac/llvm: rework how negative W affects culling to not call accept_func twice 2021-07-08 18:37:41 +00:00
ac_llvm_cull.h ac/llvm: don't return a status from ac_cull_triangle because it's unused 2021-07-08 18:37:41 +00:00
ac_llvm_helper.cpp amd: drop support for LLVM 9 2021-04-16 09:25:19 +00:00
ac_llvm_util.c ac/llvm: don't set skip-uniform-regions to fix atomic.cmpswap 2021-06-22 22:13:07 +00:00
ac_llvm_util.h ac/llvm: set target features per function instead of per target machine 2021-05-25 16:15:44 +00:00
ac_nir_to_llvm.c nir,amd: Suffix nir_op_cube_face_coord/index with _amd 2021-06-21 09:03:34 -05:00
ac_nir_to_llvm.h ac: move ac_lower_indirect_derefs() outside of the LLVM dir 2021-04-23 11:52:01 +02:00
ac_shader_abi.h ac/llvm: Implement new Geometry Shader intrinsics. 2021-03-17 12:42:23 +00:00
meson.build meson: use gnu_symbol_visibility argument 2020-06-01 18:59:18 +00:00