diff options
author | Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> | 2020-12-21 16:22:43 -0500 |
---|---|---|
committer | Marge Bot <eric+marge@anholt.net> | 2021-01-29 16:55:44 +0000 |
commit | 674ec5dc3f3290c8952120cebeb53cdccd45b559 (patch) | |
tree | ce4b3b17128591c1cbc4e36063a2ab864780f3aa | |
parent | 56e35a4022ac023e0b90a33ce107ddcb7d52392a (diff) |
pan/bi: Label table instructions
Table instructions are a subset of those scheduled to the ADD unit. They
typically involve lookup tables. Table (TBL) instructions have
additional restrictions on their sources which the scheduler must
respect.
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8723>
-rw-r--r-- | src/panfrost/bifrost/ISA.xml | 50 |
1 files changed, 25 insertions, 25 deletions
diff --git a/src/panfrost/bifrost/ISA.xml b/src/panfrost/bifrost/ISA.xml index 919e8f36e72..c4d1c18c653 100644 --- a/src/panfrost/bifrost/ISA.xml +++ b/src/panfrost/bifrost/ISA.xml @@ -2478,7 +2478,7 @@ <mod name="seg" start="9" size="1" opt="wls"/> </ins> - <ins name="+ATEST" staging="w=1" mask="0xfff00" exact="0xc8f00" message="atest"> + <ins name="+ATEST" staging="w=1" mask="0xfff00" exact="0xc8f00" message="atest" table="true"> <src start="0" mask="0xf7"/> <src start="3" mask="0xf7"/> <mod name="widen1" start="6" size="2"> @@ -4117,7 +4117,7 @@ </derived> </ins> - <ins name="+FATAN_ASSIST.f16" mask="0xfff00" exact="0x67800" unused="true"> + <ins name="+FATAN_ASSIST.f16" mask="0xfff00" exact="0x67800" unused="true" table="true"> <src start="0" mask="0xf7"/> <src start="3" mask="0xf7"/> <mod name="lane1" start="6" size="1" default="h0"> @@ -4130,12 +4130,12 @@ </mod> </ins> - <ins name="+FATAN_ASSIST.f32" mask="0xfffc0" exact="0x67a00" unused="true"> + <ins name="+FATAN_ASSIST.f32" mask="0xfffc0" exact="0x67a00" unused="true" table="true"> <src start="0" mask="0xf7"/> <src start="3" mask="0xf7"/> </ins> - <ins name="+FATAN_TABLE.f16" mask="0xfff00" exact="0x67900" unused="true"> + <ins name="+FATAN_TABLE.f16" mask="0xfff00" exact="0x67900" unused="true" table="true"> <src start="0" mask="0xf7"/> <src start="3" mask="0xf7"/> <mod name="lane1" start="6" size="1" default="h0"> @@ -4148,7 +4148,7 @@ </mod> </ins> - <ins name="+FATAN_TABLE.f32" mask="0xfffc0" exact="0x67a40" unused="true"> + <ins name="+FATAN_TABLE.f32" mask="0xfffc0" exact="0x67a40" unused="true" table="true"> <src start="0" mask="0xf7"/> <src start="3" mask="0xf7"/> </ins> @@ -4293,17 +4293,17 @@ </swap> </ins> - <ins name="+FCOS_TABLE.u6" mask="0xfffe8" exact="0x67a88"> + <ins name="+FCOS_TABLE.u6" mask="0xfffe8" exact="0x67a88" table="true"> <src start="0" mask="0xf7"/> <mod name="offset" start="4" size="1" opt="offset"/> </ins> - <ins name="+FEXP.f32" mask="0xfffc0" exact="0x66ac0"> + <ins name="+FEXP.f32" mask="0xfffc0" exact="0x66ac0" table="true"> <src start="0" mask="0xf7"/> <src start="3" mask="0xf7"/> </ins> - <ins name="+FEXP_TABLE.u4" mask="0xfffe0" exact="0x67ac0"> + <ins name="+FEXP_TABLE.u4" mask="0xfffe0" exact="0x67ac0" table="true"> <src start="0" mask="0xf7"/> <mod name="adj" start="3" size="2"> <opt>none</opt> @@ -4312,11 +4312,11 @@ </mod> </ins> - <ins name="+FLOGD.f32" mask="0xffff8" exact="0x66340"> + <ins name="+FLOGD.f32" mask="0xffff8" exact="0x66340" table="true"> <src start="0" mask="0xf7"/> </ins> - <ins name="+FLOG_TABLE.f32"> + <ins name="+FLOG_TABLE.f32" table="true"> <src start="0" mask="0xf7"/> <mod name="widen0" size="2"> <opt>none</opt> @@ -4592,7 +4592,7 @@ </swap> </ins> - <ins name="+FPCLASS.f16" mask="0xffff0" exact="0x67c40"> + <ins name="+FPCLASS.f16" mask="0xffff0" exact="0x67c40" table="true"> <src start="0" mask="0xf7"/> <mod name="lane0" start="3" size="1" default="h0"> <opt>h0</opt> @@ -4600,7 +4600,7 @@ </mod> </ins> - <ins name="+FPCLASS.f32" mask="0xffff8" exact="0x67c50"> + <ins name="+FPCLASS.f32" mask="0xffff8" exact="0x67c50" table="true"> <src start="0" mask="0xf7"/> </ins> @@ -4609,7 +4609,7 @@ <src start="3"/> </ins> - <ins name="+FPOW_SC_DET.f16"> + <ins name="+FPOW_SC_DET.f16" table="true"> <src start="0" mask="0xf7"/> <src start="3" mask="0xf7"/> <mod name="func" size="2"> @@ -4659,7 +4659,7 @@ </encoding> </ins> - <ins name="+FPOW_SC_DET.f32" mask="0xffe40" exact="0x67640"> + <ins name="+FPOW_SC_DET.f32" mask="0xffe40" exact="0x67640" table="true"> <src start="0" mask="0xf7"/> <src start="3" mask="0xf7"/> <mod name="func" start="7" size="2"> @@ -4670,7 +4670,7 @@ </mod> </ins> - <ins name="+FRCBRT_APPROX_A.f32" unused="true"> + <ins name="+FRCBRT_APPROX_A.f32" unused="true" table="true"> <src start="0" mask="0xf7"/> <mod name="widen0" size="2"> <opt>none</opt> @@ -4692,15 +4692,15 @@ </encoding> </ins> - <ins name="+FRCBRT_APPROX_B.f32" mask="0xffff8" exact="0x67ab0" unused="true"> + <ins name="+FRCBRT_APPROX_B.f32" mask="0xffff8" exact="0x67ab0" unused="true" table="true"> <src start="0" mask="0xf7"/> </ins> - <ins name="+FRCBRT_APPROX_C.f32" mask="0xffff8" exact="0x67ab8" unused="true"> + <ins name="+FRCBRT_APPROX_C.f32" mask="0xffff8" exact="0x67ab8" unused="true" table="true"> <src start="0" mask="0xf7"/> </ins> - <ins name="+FRCP.f16" mask="0xffec0" exact="0x67080"> + <ins name="+FRCP.f16" mask="0xffec0" exact="0x67080" table="true"> <src start="0" mask="0xf7"/> <mod name="neg0" start="3" size="1" opt="neg"/> <mod name="abs0" start="4" size="1" opt="abs"/> @@ -4711,7 +4711,7 @@ </mod> </ins> - <ins name="+FRCP.f32" mask="0xfffa0" exact="0x66000"> + <ins name="+FRCP.f32" mask="0xfffa0" exact="0x66000" table="true"> <src start="0" mask="0xf7"/> <mod name="widen0" size="2"> <opt>none</opt> @@ -4724,7 +4724,7 @@ </derived> </ins> - <ins name="+FRCP_APPROX.f32"> + <ins name="+FRCP_APPROX.f32" table="true"> <src start="0" mask="0xf7"/> <mod name="widen0" size="2"> <opt>none</opt> @@ -4888,7 +4888,7 @@ </mod> </ins> - <ins name="+FRSQ.f16" mask="0xffec0" exact="0x67280"> + <ins name="+FRSQ.f16" mask="0xffec0" exact="0x67280" table="true"> <src start="0" mask="0xf7"/> <mod name="neg0" start="3" size="1" opt="neg"/> <mod name="abs0" start="4" size="1" opt="abs"/> @@ -4899,7 +4899,7 @@ </mod> </ins> - <ins name="+FRSQ.f32" mask="0xfffa0" exact="0x66100"> + <ins name="+FRSQ.f32" mask="0xfffa0" exact="0x66100" table="true"> <src start="0" mask="0xf7"/> <mod name="widen0" size="2"> <opt>none</opt> @@ -4912,7 +4912,7 @@ </derived> </ins> - <ins name="+FRSQ_APPROX.f32"> + <ins name="+FRSQ_APPROX.f32" table="true"> <src start="0" mask="0xf7"/> <mod name="widen0" size="2"> <opt>none</opt> @@ -4934,12 +4934,12 @@ </encoding> </ins> - <ins name="+FSINCOS_OFFSET.u6" mask="0xffff0" exact="0x67aa0"> + <ins name="+FSINCOS_OFFSET.u6" mask="0xffff0" exact="0x67aa0" table="true"> <src start="0" mask="0xf7"/> <mod name="scale" start="3" size="1" opt="scale"/> </ins> - <ins name="+FSIN_TABLE.u6" mask="0xfffe8" exact="0x67a80"> + <ins name="+FSIN_TABLE.u6" mask="0xfffe8" exact="0x67a80" table="true"> <src start="0" mask="0xf7"/> <mod name="offset" start="4" size="1" opt="offset"/> </ins> |