diff options
author | Danylo Piliaiev <dpiliaiev@igalia.com> | 2021-07-07 14:40:52 +0300 |
---|---|---|
committer | Marge Bot <eric+marge@anholt.net> | 2021-07-09 13:00:29 +0000 |
commit | 1c6c200c0d79329174d19ae694d11f762819eeba (patch) | |
tree | 00b46d75b489b3a49408ff789cbb99d449e720a5 /src/freedreno/ir3/tests/disasm.c | |
parent | 543eb42c355798c26fb56b27a97ea1906116942e (diff) | |
download | mesa-1c6c200c0d79329174d19ae694d11f762819eeba.tar.gz |
ir3: add newly found shlg.b16 instruction
Example of blob's output:
(nop3) shlg.b16 hr8.x, (r)8, (r)hr8.x, 12
It does: (src2 << src1) | src2
src1 and src2 could be GPRs, relative GPRs, relative consts,
or immidiates. However, they could not be plain const registers.
Blob does use it in conjuncture with "samgq" instruction.
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11760>
Diffstat (limited to 'src/freedreno/ir3/tests/disasm.c')
-rw-r--r-- | src/freedreno/ir3/tests/disasm.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/freedreno/ir3/tests/disasm.c b/src/freedreno/ir3/tests/disasm.c index 31fcf97bf4a..604e96904fa 100644 --- a/src/freedreno/ir3/tests/disasm.c +++ b/src/freedreno/ir3/tests/disasm.c @@ -118,6 +118,9 @@ static const struct test { INSTR_6XX(63820005_10315030, "mad.f32 r1.y, (neg)c12.x, r1.x, c12.y"), INSTR_6XX(62050009_00091000, "mad.u24 r2.y, c0.x, r2.z, r2.y"), INSTR_6XX(61828008_00081033, "madsh.m16 r2.x, c12.w, r1.y, r2.x"), + INSTR_6XX(65900820_100cb008, "(nop3) shlg.b16 hr8.x, 8, hr8.x, 12"), /* (nop3) shlg.b16 hr8.x, (r)8, (r)hr8.x, 12; */ + INSTR_6XX(65ae085c_0002a001, "(nop3) shlg.b16 hr23.x, hr0.y, hr23.x, hr0.z"), /* not seen in blob */ + INSTR_6XX(65900820_0c0aac05, "(nop3) shlg.b16 hr8.x, hc<a0.x + 5>, hr8.x, hc<a0.x + 10>"), /* not seen in blob */ /* cat4 */ INSTR_6XX(8010000a_00000003, "rcp r2.z, r0.w"), |