mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-03 05:00:09 +01:00
spirv: fix AtomicLoad/Store on images
OpAtomicLoad/Store should have pointer to images just like the rest of the
atomic operators. These couple of lines were poorly copied from the
ssbo/shared_vars cases (the only ones currently tests by the CTS).
Fixes 2afb950161 ("spirv/nir: Add support for OpAtomicLoad/Store")
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
This commit is contained in:
parent
36f0f03182
commit
9adfa695ac
1 changed files with 3 additions and 10 deletions
|
|
@ -1671,6 +1671,7 @@ vtn_handle_image(struct vtn_builder *b, SpvOp opcode,
|
|||
case SpvOpAtomicIDecrement:
|
||||
case SpvOpAtomicIAdd:
|
||||
case SpvOpAtomicISub:
|
||||
case SpvOpAtomicLoad:
|
||||
case SpvOpAtomicSMin:
|
||||
case SpvOpAtomicUMin:
|
||||
case SpvOpAtomicSMax:
|
||||
|
|
@ -1681,17 +1682,9 @@ vtn_handle_image(struct vtn_builder *b, SpvOp opcode,
|
|||
image = *vtn_value(b, w[3], vtn_value_type_image_pointer)->image;
|
||||
break;
|
||||
|
||||
case SpvOpAtomicLoad: {
|
||||
image.image =
|
||||
vtn_value(b, w[3], vtn_value_type_access_chain)->access_chain;
|
||||
case SpvOpAtomicStore:
|
||||
image = *vtn_value(b, w[1], vtn_value_type_image_pointer)->image;
|
||||
break;
|
||||
}
|
||||
|
||||
case SpvOpAtomicStore: {
|
||||
image.image =
|
||||
vtn_value(b, w[1], vtn_value_type_access_chain)->access_chain;
|
||||
break;
|
||||
}
|
||||
|
||||
case SpvOpImageQuerySize:
|
||||
image.image =
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue