mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 11:48:06 +02:00
pco, pygen: support test predicate setting
Signed-off-by: Simon Perretta <simon.perretta@imgtec.com> Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36412>
This commit is contained in:
parent
683904f4c0
commit
5ce4bc4671
2 changed files with 33 additions and 1 deletions
|
|
@ -1005,7 +1005,7 @@ encode_map(O_TST,
|
|||
(RM_ELEM, SRC(1), '== 0'),
|
||||
])
|
||||
],
|
||||
op_ref_maps=[('2_tst', ['ftt', ['p0', '_']], ['is1', 'is2'])]
|
||||
op_ref_maps=[('2_tst', ['ftt', ['p0', '_']], [['is1', '_'], ['is2', '_']])]
|
||||
)
|
||||
|
||||
encode_map(O_MOVC,
|
||||
|
|
@ -1876,6 +1876,37 @@ group_map(O_IMUL32,
|
|||
]
|
||||
)
|
||||
|
||||
group_map(O_TSTZ,
|
||||
hdr=(I_IGRP_HDR_MAIN, [
|
||||
('oporg', 'p0_p2'),
|
||||
('olchk', OM_OLCHK),
|
||||
('w1p', False),
|
||||
('w0p', ('!pco_ref_is_null', DEST(0))),
|
||||
('cc', OM_EXEC_CND),
|
||||
('end', OM_END),
|
||||
('atom', OM_ATOM),
|
||||
('rpt', OM_RPT)
|
||||
]),
|
||||
enc_ops=[
|
||||
('0', O_MBYP, ['ft0'], [SRC(0)]),
|
||||
('2_tst', O_TST, ['ftt', DEST(1)], ['is1', '_'], [(OM_TST_OP_MAIN, 'zero'), (OM_TST_TYPE_MAIN, OM_TST_TYPE_MAIN)]),
|
||||
('2_pck', O_PCK, ['ft2'], ['_'], [(OM_PCK_FMT, 'zero')]),
|
||||
('2_mov', O_MOVC, [DEST(0), '_'], ['ftt', 'fte', 'is4', '_', '_'])
|
||||
],
|
||||
srcs=[
|
||||
('s[0]', ('0', SRC(0)), 's0'),
|
||||
('s[1]', 'pco_true'),
|
||||
],
|
||||
iss=[
|
||||
('is[0]', 's1'),
|
||||
('is[1]', 'ft0'),
|
||||
('is[4]', 'ft2'),
|
||||
],
|
||||
dests=[
|
||||
('w[0]', ('2_mov', DEST(0)), 'w0'),
|
||||
]
|
||||
)
|
||||
|
||||
group_map(O_ST32,
|
||||
hdr=(I_IGRP_HDR_MAIN, [
|
||||
('oporg', 'be'),
|
||||
|
|
|
|||
|
|
@ -379,6 +379,7 @@ O_MAX = hw_op('max', OM_ALU + [OM_TST_TYPE_MAIN], 1, 2, [], [[RM_ABS, RM_NEG], [
|
|||
O_IADD32 = hw_op('iadd32', OM_ALU + [OM_S], 1, 3, [], [[RM_ABS, RM_NEG], [RM_ABS, RM_NEG]])
|
||||
O_IMUL32 = hw_op('imul32', OM_ALU + [OM_S], 1, 3, [], [[RM_ABS, RM_NEG], [RM_ABS, RM_NEG]])
|
||||
|
||||
O_TSTZ = hw_op('tstz', OM_ALU + [OM_TST_TYPE_MAIN], 2, 1, [], [[RM_ELEM]])
|
||||
O_ST32 = hw_op('st32', OM_ALU_RPT1 + [OM_MCU_CACHE_MODE_ST], 0, 5)
|
||||
|
||||
# Pseudo-ops (unmapped).
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue