Vulkan: SPIR-V Gen: Support == and != on complex types
In GLSL, == and != produce a bool. In SPIR-V, there are only
component-wise comparison operations. For ==, OpAll should be used to
reduce it to a single bool, and for !=, OpAny. For matrices, the
comparison is done column by column with a similar reduction for each
column, and one for the final result. For structs and arrays, the
comparison is similarly done field by field or element by element
respectively.
Bug: angleproject:4889
Change-Id: I8157c1931b7d1dedd74a3825967f5e212d346900
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3001905
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by:
Tim Van Patten <timvp@google.com>
Reviewed-by:
Jamie Madill <jmadill@chromium.org>
Showing
This diff is collapsed.
Click to expand it.
Please
register
or
sign in
to comment