aco: assert a label only uses one of the members in ssa_info's union

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7349>
This commit is contained in:
Rhys Perry 2020-08-12 13:52:55 +01:00 committed by Marge Bot
parent 3dfbed2a87
commit 70320f4117
1 changed files with 4 additions and 0 deletions

View File

@ -125,6 +125,10 @@ static constexpr uint64_t temp_labels = label_abs | label_neg | label_temp | lab
label_scc_invert | label_b2i;
static constexpr uint32_t val_labels = label_constant_32bit | label_constant_64bit | label_constant_16bit | label_literal;
static_assert((instr_labels & temp_labels) == 0, "labels cannot intersect");
static_assert((instr_labels & val_labels) == 0, "labels cannot intersect");
static_assert((temp_labels & val_labels) == 0, "labels cannot intersect");
struct ssa_info {
uint64_t label;
union {