pan/bi: Add dummy carry/borrow argument for iadd/isub
authorAlyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Fri, 31 Jul 2020 20:47:05 +0000 (16:47 -0400)
committerMarge Bot <eric+marge@anholt.net>
Wed, 16 Sep 2020 20:05:34 +0000 (20:05 +0000)
commit33710ff8953c5112b88ae8f0f2ff55b021815ca6
tree2b5f7557d680839004aca76ecd7a4154949b88c7
parent42ec4aa47851fa5c5ce22ab03b2762b7bdc3e027
pan/bi: Add dummy carry/borrow argument for iadd/isub

On FMA, a carry/borrow is required for iaddc/isubb (whereas the ADD
counterparts don't support carrying/borrowing). The trick is to model
this with an extra dummy (ZERO) argument which is free to encode on FMA,
and in the scheduler, "demote" to the non-carried versions if we want to
schedule to ADD.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Reviewed-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6749>
src/panfrost/bifrost/bifrost_compile.c
src/panfrost/bifrost/test/bi_test_pack.c