add binutils entry indicating "done" etc to ls012
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Wed, 26 Apr 2023 13:35:07 +0000 (14:35 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Wed, 26 Apr 2023 13:35:07 +0000 (14:35 +0100)
openpower/sv/rfc/ls012/optable.csv

index 7c98111d76e914f79410d7d176f7464f33e75124..526b2813fe144452aa97e5de5c343655877f6d86 100644 (file)
-op, rfc, priority, cost, SVP64, group, PO1, page, regs, level
+op, rfc, priority, cost, SVP64, group, PO1, page, regs, level, binutils
 # LD/ST-Postincrement
-lbzup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, SFFS
-lbzupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, SFFS
-lhzup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, SFFS
-lhzupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, SFFS
-lhaup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, SFFS
-lhaupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, SFFS
-lwzup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, SFFS
-lwzupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, SFFS
-lwaupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, SFFS
-ldup,     ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, SFFS
-ldupx,    ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, SFFS
-stbup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, SFFS
-stbupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, SFFS
-sthup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, SFFS
-sthupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, SFFS
-stwup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, SFFS
-stwupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, SFFS
-stdup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, SFFS
-stdupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, SFFS
+lbzup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, SFFS, TBD
+lbzupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, SFFS, TBD
+lhzup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, SFFS, TBD
+lhzupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, SFFS, TBD
+lhaup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, SFFS, TBD
+lhaupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, SFFS, TBD
+lwzup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, SFFS, TBD
+lwzupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, SFFS, TBD
+lwaupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, SFFS, TBD
+ldup,     ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, SFFS, TBD
+ldupx,    ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, SFFS, TBD
+stbup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, SFFS, TBD
+stbupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, SFFS, TBD
+sthup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, SFFS, TBD
+sthupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, SFFS, TBD
+stwup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, SFFS, TBD
+stwupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, SFFS, TBD
+stdup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, SFFS, TBD
+stdupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, SFFS, TBD
 # FP LD/ST-Postincrement
-lfdu,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, SFFS
-lfsup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, SFFS
-lfdupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, SFFS
-lsdupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, SFFS
-stfdup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, SFFS
-stfsup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, SFFS
-stfdupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, SFFS
-stfsupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, SFFS
+lfdu,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, SFFS, TBD
+lfsup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, SFFS, TBD
+lfdupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, SFFS, TBD
+lsdupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, SFFS, TBD
+stfdup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, SFFS, TBD
+stfsup,    ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, SFFS, TBD
+stfdupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, SFFS, TBD
+stfsupx,   ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, SFFS, TBD
 # LD/ST-Shifted-Postincrement
-lbzuspx,   ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, SFFS
-lhzuspx,   ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, SFFS
-lhauspx,   ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, SFFS
-lwzuspx,   ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, SFFS
-lwauspx,   ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, SFFS
-lduspx,    ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, SFFS
-stbuspx,   ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, SFFS
-sthuspx,   ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, SFFS
-stwuspx,   ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, SFFS
-stduspx,   ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, SFFS
+lbzuspx,   ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, SFFS, TBD
+lhzuspx,   ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, SFFS, TBD
+lhauspx,   ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, SFFS, TBD
+lwzuspx,   ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, SFFS, TBD
+lwauspx,   ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, SFFS, TBD
+lduspx,    ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, SFFS, TBD
+stbuspx,   ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, SFFS, TBD
+sthuspx,   ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, SFFS, TBD
+stwuspx,   ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, SFFS, TBD
+stduspx,   ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, SFFS, TBD
 # FP LD/ST-Shifted-Postincrement
-lfdupsx,   ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, SFFS
-lsdupsx,   ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, SFFS
-stfdupsx,   ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, SFFS
-stfsupsx,   ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, SFFS
+lfdupsx,   ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, SFFS, TBD
+lsdupsx,   ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, SFFS, TBD
+stfdupsx,   ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, SFFS, TBD
+stfsupsx,   ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, SFFS, TBD
 # LD/ST-Index-Shifted (w/Update)
-lbzsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS
-lbzusx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, SFFS
-lhzsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS
-lhzusx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, SFFS
-lhasx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS
-lhausx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, SFFS
-lwzsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS
-lwzusx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, SFFS
-lwasx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS
-lwausx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, SFFS
-ldsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS
-ldusx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, SFFS
-lhbrsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS
-lwbrsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS
-ldbrsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS
-stbsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS
-stbusx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, SFFS
-sthsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS
-sthusx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, SFFS
-stwsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS
-stwusx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, SFFS
-stdsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS
-stdusx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, SFFS
-sthbrsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS
-stwbrsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS
-stdbrsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS
+lbzsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS, TBD
+lbzusx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, SFFS, TBD
+lhzsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS, TBD
+lhzusx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, SFFS, TBD
+lhasx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS, TBD
+lhausx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, SFFS, TBD
+lwzsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS, TBD
+lwzusx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, SFFS, TBD
+lwasx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS, TBD
+lwausx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, SFFS, TBD
+ldsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS, TBD
+ldusx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, SFFS, TBD
+lhbrsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS, TBD
+lwbrsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS, TBD
+ldbrsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS, TBD
+stbsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS, TBD
+stbusx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, SFFS, TBD
+sthsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS, TBD
+sthusx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, SFFS, TBD
+stwsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS, TBD
+stwusx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, SFFS, TBD
+stdsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS, TBD
+stdusx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, SFFS, TBD
+sthbrsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS, TBD
+stwbrsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS, TBD
+stdbrsx,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS, TBD
 # FP LD/ST-Index-Shifted (w/Update)
-lfsxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS
-lfsuxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS
-lfdxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS
-lfduxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS
-lfiwaxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS
-lfiwzxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS
-stfsxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS
-stfsuxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, SFFS
-stfdxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS
-stfduxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, SFFS
-stfiwxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS
+lfsxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS, TBD
+lfsuxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS, TBD
+lfdxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS, TBD
+lfduxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS, TBD
+lfiwaxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS, TBD
+lfiwzxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, SFFS, TBD
+stfsxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS, TBD
+stfsuxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, SFFS, TBD
+stfdxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS, TBD
+stfduxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, SFFS, TBD
+stfiwxs,    ls004, high, 9, yes, EXT0xx, no, ls004, 3R, SFFS, TBD
 # Bitmanip LUT2/3 operations. high cost high reward
-grevlut,     TBD,   high, 3,  yes, TBD,    no,  sv/bitmanip, 2R1W, opt
-grevluti,    TBD,   high, 3,  yes, TBD,    yes, sv/bitmanip, 1R1W, opt
-ternlogi,    ls007, high, 2,  yes, TBD,    yes, sv/bitmanip, 3R1W1w, SFFS
-crternlogi,  ls007, high, 5,  yes, TBD,    yes, sv/bitmanip, 3r1w, SV/D
-binlut,      ls007, high, 6,  yes, TBD,    no,  sv/bitmanip, 3R1W, SFFS
-crbinlut,    ls007, high, 5,  yes, TBD,    no,  sv/bitmanip, 3r1w, SV/D
+grevlut,     TBD,   high, 3,  yes, TBD,    no,  sv/bitmanip, 2R1W, opt, no
+grevluti,    TBD,   high, 3,  yes, TBD,    yes, sv/bitmanip, 1R1W, opt, no
+ternlogi,    ls007, high, 2,  yes, TBD,    yes, sv/bitmanip, 3R1W1w, SFFS, no
+crternlogi,  ls007, high, 5,  yes, TBD,    yes, sv/bitmanip, 3r1w, SV/D, no
+binlut,      ls007, high, 6,  yes, TBD,    no,  sv/bitmanip, 3R1W, SFFS, no
+crbinlut,    ls007, high, 5,  yes, TBD,    no,  sv/bitmanip, 3r1w, SV/D, no
 # Float-Load-Immediate (always saves one LD L1/2/3 D-Cache op)
-fmvis,       ls002, high, 5,  yes, TBD,    no,  sv/bitmanip, 1W, SFFS
-fishmv,      ls002, high, 5,  yes, TBD,    no,  sv/bitmanip, 1R1W, SFFS
+fmvis,       ls002, high, 5,  yes, TBD,    no,  sv/bitmanip, 1W, SFFS, yes
+fishmv,      ls002, high, 5,  yes, TBD,    no,  sv/bitmanip, 1R1W, SFFS, yes
 # Shift-and-Add (mitigates LD-ST-Shift; Cryptography e.g. twofish)
-shadd,       ls004, med,  7,  yes, EXT0xx, no,   sv/bitmanip, 2R1W1w, SFFS
-shadduw,     ls004, med,  7,  yes, EXT0xx, no,   sv/bitmanip, 2R1W1w, SFFS
-shaddw,      ls004, med,  7,  yes, EXT0xx, no,   sv/bitmanip, 2R1W1w, SFFS
+shadd,       ls004, med,  7,  yes, EXT0xx, no,   sv/bitmanip, 2R1W1w, SFFS, yes
+shadduw,     ls004, med,  7,  yes, EXT0xx, no,   sv/bitmanip, 2R1W1w, SFFS, yes
+shaddw,      ls004, med,  7,  yes, EXT0xx, no,   sv/bitmanip, 2R1W1w, SFFS, yes
 # Audio-Video
-absdu,       TBD,   TBD,  10, yes, TBD,    no, sv/av_opcodes, 2R1W1w, SV/D
-avgadd,      TBD,   TBD,  10, yes, TBD,    no, sv/av_opcodes, 2R1W1w, SV/D
-minmax,      ls013, high, 6,  yes, EXT0xx, no, sv/av_opcodes, 2R1W1w, SFFS
-absaccs,     TBD,   TBD,  10, yes, TBD,    no, sv/av_opcodes, 3R1W1w, SV/D
-absaccu,     TBD,   TBD,  10, yes, TBD,    no, sv/av_opcodes, 3R1W1w, SV/D
-# BMI group
-bmask,       TBD,   high, 5,  yes, EXT0xx, yes, sv/vector_ops, 2R1W1w, SFFS
-cprop,       TBD,   high, 5,  yes, TBD,    yes, sv/vector_ops, 2R1W1w, opt
-# SVP64 Management.
-setvl,       ls008, high, 5,  no,  EXT0xx, yes, sv/setvl, 3R2W1w, SV/E
-svstep,      ls008, high, 5,  yes, EXT0xx, yes, sv/svstep, 1R2W1w, SV/E
-svremap,     ls009, high, 5,  no,  EXT0xx, yes, sv/remap, 1R1W, SV/D
-svshape,     ls009, high, 5,  no,  EXT0xx, yes, sv/remap, 5R5W, SV/D
-svshape2,    ls009, high, 5,  no,  EXT0xx, yes, sv/remap, 5R5W, SV/D
-svindex,     ls009, high, 5,  no,  EXT0xx, yes, sv/remap, 5R5W, SV/D
+absdu,       TBD,   TBD,  10, yes, TBD,    no, sv/av_opcodes, 2R1W1w, SV/D, TODO
+avgadd,      TBD,   TBD,  10, yes, TBD,    no, sv/av_opcodes, 2R1W1w, SV/D, yes
+minmax,      ls013, high, 6,  yes, EXT0xx, no, sv/av_opcodes, 2R1W1w, SFFS, REDO
+absaccs,     TBD,   TBD,  10, yes, TBD,    no, sv/av_opcodes, 3R1W1w, SV/D, TODO
+absaccu,     TBD,   TBD,  10, yes, TBD,    no, sv/av_opcodes, 3R1W1w, SV/D, TODO
+# BMI group, TBD
+bmask,       TBD,   high, 5,  yes, EXT0xx, yes, sv/vector_ops, 2R1W1w, SFFS, yes
+cprop,       TBD,   high, 5,  yes, TBD,    yes, sv/vector_ops, 2R1W1w, opt, yes
+# SVP64 Management
+setvl,       ls008, high, 5,  no,  EXT0xx, yes, sv/setvl, 3R2W1w, SV/E, yes
+svstep,      ls008, high, 5,  yes, EXT0xx, yes, sv/svstep, 1R2W1w, SV/E, yes
+svremap,     ls009, high, 5,  no,  EXT0xx, yes, sv/remap, 1R1W, SV/D, yes
+svshape,     ls009, high, 5,  no,  EXT0xx, yes, sv/remap, 5R5W, SV/D, yes
+svshape2,    ls009, high, 5,  no,  EXT0xx, yes, sv/remap, 5R5W, SV/D, yes
+svindex,     ls009, high, 5,  no,  EXT0xx, yes, sv/remap, 5R5W, SV/D, yes
 # GPU swizzle
-mv.swizzle,  TBD,   TBD,  4,  yes, TBD,    yes, sv/mv.swizzle, 2R2W, opt
-fmv.swizzle, TBD,   TBD,  4,  yes, TBD,    yes, sv/mv.swizzle, 2R2W, opt
-# CR weirds
-crrweird,    ls015,   high, 8,  yes, TBD,    no, sv/cr_int_predication, 1r1W1w, SV/D
-mfcrweird,   ls015,   high, 8,  yes, TBD,    no, sv/cr_int_predication, 1r1W1w, SV/D
-mtcrrweird,  ls015,   high, 9,  yes, TBD,    no, sv/cr_int_predication, 1R1r1w, SV/D
-mtcrweird,   ls015,   high, 9,  yes, TBD,    no, sv/cr_int_predication, 1R1r1w, SV/D
-crweirder,   ls015,   high, 9,  yes, TBD,    no, sv/cr_int_predication, 2r1w, SV/D
-mcrfm,       ls015,   high, 9,  yes, EXT0xx, no, sv/cr_int_predication, 2r1w, SFFS
+mv.swizzle,  TBD,   TBD,  4,  yes, TBD,    yes, sv/mv.swizzle, 2R2W, opt, TBD
+fmv.swizzle, TBD,   TBD,  4,  yes, TBD,    yes, sv/mv.swizzle, 2R2W, opt, TBD
+# CR weirds, TBD
+crrweird,  ls015, high, 8, yes, TBD,    no, sv/cr_int_predication, 1r1W1w, SV/D, TODO
+mfcrweird, ls015, high, 8, yes, TBD,    no, sv/cr_int_predication, 1r1W1w, SV/D, TODO
+mtcrrweird,ls015, high, 9, yes, TBD,    no, sv/cr_int_predication, 1R1r1w, SV/D, TODO
+mtcrweird, ls015, high, 9, yes, TBD,    no, sv/cr_int_predication, 1R1r1w, SV/D, TODO
+crweirder, ls015, high, 9, yes, TBD,    no, sv/cr_int_predication, 2r1w, SV/D, TODO
+mcrfm,     ls015, high, 9, yes, EXT0xx, no, sv/cr_int_predication, 2r1w, SFFS, TODO
 # fclass (Scalar variant of xvtstdcsp)
-fptstp(s),   TBD,   high,  10, yes, EXT0xx, no, sv/fclass, 1R1w, SFFS
-# INT<->FP mv
-fmvtg(s),    ls006, high, 10, yes, EXT0xx, no, sv/int_fp_mv, 1R1W1w, SFFS
-fmvfg(s),    ls006, high, 10, yes, EXT0xx, no, sv/int_fp_mv, 1R1W1w, SFFS
-fcvtfg(s),   ls006, high, 10, yes, EXT0xx, no, sv/int_fp_mv, 1R1W1w, SFFS
-fcvttg(s),   ls006, high, 9,  yes, EXT0xx, no, sv/int_fp_mv, 1R1W1w, SFFS
+fptstp(s),   TBD,   high,  10, yes, EXT0xx, no, sv/fclass, 1R1w, SFFS, TODO
+# INT<->FP mv, TBD
+fmvtg(s),    ls006, high, 10, yes, EXT0xx, no, sv/int_fp_mv, 1R1W1w, SFFS, TODO
+fmvfg(s),    ls006, high, 10, yes, EXT0xx, no, sv/int_fp_mv, 1R1W1w, SFFS, TODO
+fcvtfg(s),   ls006, high, 10, yes, EXT0xx, no, sv/int_fp_mv, 1R1W1w, SFFS, TODO
+fcvttg(s),   ls006, high, 9,  yes, EXT0xx, no, sv/int_fp_mv, 1R1W1w, SFFS, TODO
 # Big-Integer Chained 3-in 2-out (64-bit Carry)
-dsld,        ls003, high, 5,  yes, EXT0xx, no, sv/biginteger, 3R2W1w, SFFS
-dsrd,        ls003, high, 5,  yes, EXT0xx, no, sv/biginteger, 3R2W1w, SFFS
-maddedu,     ls003, high, 6,  yes, EXT0xx, no, sv/biginteger, 3R2W, SFFS
-maddedus,    ls003, high, 6,  yes, EXT0xx, no, sv/biginteger, 3R2W, SFFS
-divmod2du,   ls003, high, 6,  yes, EXT0xx, no, sv/biginteger, 3R2W1w, SFFS
+dsld,        ls003, high, 5,  yes, EXT0xx, no, sv/biginteger, 3R2W1w, SFFS, TODO
+dsrd,        ls003, high, 5,  yes, EXT0xx, no, sv/biginteger, 3R2W1w, SFFS, TODO
+maddedu,     ls003, high, 6,  yes, EXT0xx, no, sv/biginteger, 3R2W, SFFS, yes
+maddedus,    ls003, high, 6,  yes, EXT0xx, no, sv/biginteger, 3R2W, SFFS, TODO
+divmod2du,   ls003, high, 6,  yes, EXT0xx, no, sv/biginteger, 3R2W1w, SFFS, TODO
 # FP DCT/FFT Butterfly (2/3-in 2-out)
-ffadd(s),    TBD,   med,  10, yes, EXT2xx, no, isa/svfparith, 2R1W1w, opt
-ffsub(s),    TBD,   med,  10, yes, EXT2xx, no, isa/svfparith, 2R1W1w, opt
-ffmul(s),    TBD,   med,  10, yes, EXT2xx, no, isa/svfparith, 2R1W1w, opt
-ffdiv(s),    TBD,   med,  10, yes, EXT2xx, no, isa/svfparith, 2R1W1w, opt
-fdmadd(s),   TBD,   med,  5,  yes, EXT2xx, no, isa/svfparith, 3R2W1w, opt
-ffmadd(s),   TBD,   med,  5,  yes, EXT2xx, no, isa/svfparith, 3R2W1w, opt
-ffmsub(s),   TBD,   med,  5,  yes, EXT2xx, no, isa/svfparith, 3R2W1w, opt
-ffnmadd(s),  TBD,   med,  5,  yes, EXT2xx, no, isa/svfparith, 3R2W1w, opt
-ffnmsub(s),  TBD,   med,  5,  yes, EXT2xx, no, isa/svfparith, 3R2W1w, opt
+ffadd(s),    TBD,   med,  10, yes, EXT2xx, no, isa/svfparith, 2R1W1w, opt, TODO
+ffsub(s),    TBD,   med,  10, yes, EXT2xx, no, isa/svfparith, 2R1W1w, opt, TODO
+ffmul(s),    TBD,   med,  10, yes, EXT2xx, no, isa/svfparith, 2R1W1w, opt, TODO
+ffdiv(s),    TBD,   med,  10, yes, EXT2xx, no, isa/svfparith, 2R1W1w, opt, TODO
+fdmadd(s),   TBD,   med,  5,  yes, EXT2xx, no, isa/svfparith, 3R2W1w, opt, TODO
+ffmadd(s),   TBD,   med,  5,  yes, EXT2xx, no, isa/svfparith, 3R2W1w, opt, TODO
+ffmsub(s),   TBD,   med,  5,  yes, EXT2xx, no, isa/svfparith, 3R2W1w, opt, TODO
+ffnmadd(s),  TBD,   med,  5,  yes, EXT2xx, no, isa/svfparith, 3R2W1w, opt, TODO
+ffnmsub(s),  TBD,   med,  5,  yes, EXT2xx, no, isa/svfparith, 3R2W1w, opt, TODO
 # Trigonometric (1-arg)
-fsin(s),     TBD,   high,  10, yes, EXT0xx, no, transcendentals, 1R1W1w, SV/S
-fcos(s),     TBD,   high,  10, yes, EXT0xx, no, transcendentals, 1R1W1w, SV/S
-ftan(s),     TBD,   high,  10, yes, EXT0xx, no, transcendentals, 1R1W1w, SV/S
-fasin(s),    TBD,   low,   10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt
-facos(s),    TBD,   low,   10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt
-fatan(s),    TBD,   low,   10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt
-fsinpi(s),   TBD,   high,  10, yes, TBD,    no, transcendentals, 1R1W1w, SV/S
-fcospi(s),   TBD,   high,  10, yes, TBD,    no, transcendentals, 1R1W1w, SV/S
-ftanpi(s),   TBD,   high,  10, yes, TBD,    no, transcendentals, 1R1W1w, SV/S
-fasinpi(s),  TBD,   low,  10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt
-facospi(s),  TBD,   low,  10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt
-fatanpi(s),  TBD,   low,  10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt
-fsinh(s),    TBD,   low,   10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt
-fcosh(s),    TBD,   low,   10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt
-ftanh(s),    TBD,   low,   10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt
-fasinh(s),   TBD,   low,   10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt
-facosh(s),   TBD,   low,   10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt
-fatanh(s),   TBD,   low,   10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt
+fsin(s),     TBD,   high,  10, yes, EXT0xx, no, transcendentals, 1R1W1w, SV/S, yes
+fcos(s),     TBD,   high,  10, yes, EXT0xx, no, transcendentals, 1R1W1w, SV/S, yes
+ftan(s),     TBD,   high,  10, yes, EXT0xx, no, transcendentals, 1R1W1w, SV/S, yes
+fasin(s),    TBD,   low,   10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt, yes
+facos(s),    TBD,   low,   10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt, yes
+fatan(s),    TBD,   low,   10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt, yes
+fsinpi(s),   TBD,   high,  10, yes, TBD,    no, transcendentals, 1R1W1w, SV/S, yes
+fcospi(s),   TBD,   high,  10, yes, TBD,    no, transcendentals, 1R1W1w, SV/S, yes
+ftanpi(s),   TBD,   high,  10, yes, TBD,    no, transcendentals, 1R1W1w, SV/S, yes
+fasinpi(s),  TBD,   low,  10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt, yes
+facospi(s),  TBD,   low,  10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt, yes
+fatanpi(s),  TBD,   low,  10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt, yes
+fsinh(s),    TBD,   low,   10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt, yes
+fcosh(s),    TBD,   low,   10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt, yes
+ftanh(s),    TBD,   low,   10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt, yes
+fasinh(s),   TBD,   low,   10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt, yes
+facosh(s),   TBD,   low,   10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt, yes
+fatanh(s),   TBD,   low,   10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt, yes
 # Transcendentals (1-arg)
-frsqrt(s),   TBD,   high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, SV/S
-fcbrt(s),    TBD,   low,  10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt
-frecip(s),   TBD,   high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, SV/S
-fexp2m1(s),  TBD,   high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, SV/S
-flog2p1(s),  TBD,   high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, SV/S
-fexp2(s),    TBD,   high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, SV/S
-flog2(s),    TBD,   high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, SV/S
-fexpm1(s),   TBD,   med,  10, yes, TBD,    no, transcendentals, 1R1W1w, opt
-flogp1(s),   TBD,   med,  10, yes, TBD,    no, transcendentals, 1R1W1w, opt
-fexp(s),     TBD,   med,  10, yes, TBD,    no, transcendentals, 1R1W1w, opt
-flog(s),     TBD,   med,  10, yes, TBD,    no, transcendentals, 1R1W1w, opt
-fexp10m1(s), TBD,   med,  10, yes, TBD,    no, transcendentals, 1R1W1w, opt
-flog10p1(s), TBD,   med,  10, yes, TBD,    no, transcendentals, 1R1W1w, opt
-fexp10(s),   TBD,   med,  10, yes, TBD,    no, transcendentals, 1R1W1w, opt
-flog10(s),   TBD,   med,  10, yes, TBD,    no, transcendentals, 1R1W1w, opt
+frsqrt(s),   TBD,   high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, SV/S, yes
+fcbrt(s),    TBD,   low,  10, yes, EXT2xx, no, transcendentals, 1R1W1w, opt, yes
+frecip(s),   TBD,   high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, SV/S, yes
+fexp2m1(s),  TBD,   high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, SV/S, yes
+flog2p1(s),  TBD,   high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, SV/S, yes
+fexp2(s),    TBD,   high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, SV/S, yes
+flog2(s),    TBD,   high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, SV/S, yes
+fexpm1(s),   TBD,   med,  10, yes, TBD,    no, transcendentals, 1R1W1w, opt, yes
+flogp1(s),   TBD,   med,  10, yes, TBD,    no, transcendentals, 1R1W1w, opt, yes
+fexp(s),     TBD,   med,  10, yes, TBD,    no, transcendentals, 1R1W1w, opt, yes
+flog(s),     TBD,   med,  10, yes, TBD,    no, transcendentals, 1R1W1w, opt, yes
+fexp10m1(s), TBD,   med,  10, yes, TBD,    no, transcendentals, 1R1W1w, opt, yes
+flog10p1(s), TBD,   med,  10, yes, TBD,    no, transcendentals, 1R1W1w, opt, yes
+fexp10(s),   TBD,   med,  10, yes, TBD,    no, transcendentals, 1R1W1w, opt, yes
+flog10(s),   TBD,   med,  10, yes, TBD,    no, transcendentals, 1R1W1w, opt, yes
 # Transcendentals (2-arg)
-fatan2(s),       TBD,   med,  10, yes, EXT2xx, no, transcendentals, 2R1W1w, opt
-fatan2pi(s),     TBD,   med,  10, yes, EXT2xx, no, transcendentals, 2R1W1w, opt
-fpow(s),         TBD,   low,  10, yes, EXT2xx, no, transcendentals, 2R1W1w, opt
-fpown(s),        TBD,   low,  10, yes, EXT2xx, no, transcendentals, 2R1W1w, opt
-fpowr(s),        TBD,   low,  10, yes, EXT2xx, no, transcendentals, 2R1W1w, opt
-frootn(s),       TBD,   low,  10, yes, EXT2xx, no, transcendentals, 2R1W1w, opt
-fhypot(s),       TBD,   TBD,  10, yes, TBD,    no, transcendentals, 2R1W1w, opt
-fminmax,         ls013, high, 6,  yes, EXT0xx, no, transcendentals, 2R1W1w, SFFS
-fmod(s),         TBD,   TBD,  10, yes, TBD,    no, transcendentals, 2R1W1w, opt
-fremainder(s),   TBD,   TBD,  10, yes, TBD,    no, transcendentals, 2R1W1w, opt
+fatan2(s),       TBD,   med,  10, yes, EXT2xx, no, transcendentals, 2R1W1w, opt, yes
+fatan2pi(s),     TBD,   med,  10, yes, EXT2xx, no, transcendentals, 2R1W1w, opt, yes
+fpow(s),         TBD,   low,  10, yes, EXT2xx, no, transcendentals, 2R1W1w, opt, yes
+fpown(s),        TBD,   low,  10, yes, EXT2xx, no, transcendentals, 2R1W1w, opt, yes
+fpowr(s),        TBD,   low,  10, yes, EXT2xx, no, transcendentals, 2R1W1w, opt, yes
+frootn(s),       TBD,   low,  10, yes, EXT2xx, no, transcendentals, 2R1W1w, opt, yes
+fhypot(s),       TBD,   TBD,  10, yes, TBD,    no, transcendentals, 2R1W1w, opt, yes
+fminmax,         ls013, high, 6,  yes, EXT0xx, no, transcendentals, 2R1W1w, SFFS, REDO
+fmod(s),         TBD,   TBD,  10, yes, TBD,    no, transcendentals, 2R1W1w, opt, yes
+fremainder(s),   TBD,   TBD,  10, yes, TBD,    no, transcendentals, 2R1W1w, opt, yes