From: Luke Kenneth Casson Leighton Date: Fri, 21 Apr 2023 11:31:18 +0000 (+0100) Subject: add subset to more optable.csv X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=2099fc8641ea39756ab4e4b3b8a93a29f31da335;p=libreriscv.git add subset to more optable.csv --- diff --git a/openpower/sv/rfc/ls012/optable.csv b/openpower/sv/rfc/ls012/optable.csv index 59c170940..b295c3820 100644 --- a/openpower/sv/rfc/ls012/optable.csv +++ b/openpower/sv/rfc/ls012/optable.csv @@ -1,107 +1,107 @@ op, rfc, priority, cost, SVP64, group, PO1, page, regs, Level # LD/ST-Postincrement -lbzup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, TBD -lbzupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, TBD -lhzup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, TBD -lhzupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, TBD -lhaup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, TBD -lhaupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, TBD -lwzup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, TBD -lwzupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, TBD -lwaupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, TBD -ldup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, TBD -ldupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, TBD -stbup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, TBD -stbupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, TBD -sthup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, TBD -sthupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, TBD -stwup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, TBD -stwupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, TBD -stdup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, TBD -stdupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, TBD +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 # FP LD/ST-Postincrement -lfdu, ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, TBD -lfsup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, TBD -lfdupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, TBD -lsdupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, TBD -stfdup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, TBD -stfsup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, TBD -stfdupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, TBD -stfsupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, TBD +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 # LD/ST-Shifted-Postincrement -lbzuspx, ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, TBD -lhzuspx, ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, TBD -lhauspx, ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, TBD -lwzuspx, ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, TBD -lwauspx, ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, TBD -lduspx, ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, TBD -stbuspx, ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, TBD -sthuspx, ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, TBD -stwuspx, ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, TBD -stduspx, ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, TBD +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 # FP LD/ST-Shifted-Postincrement -lfdupsx, ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, TBD -lsdupsx, ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, TBD -stfdupsx, ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, TBD -stfsupsx, ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, TBD +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 # LD/ST-Index-Shifted (w/Update) -lbzsx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD -lbzusx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, TBD -lhzsx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD -lhzusx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, TBD -lhasx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD -lhausx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, TBD -lwzsx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD -lwzusx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, TBD -lwasx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD -lwausx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, TBD -ldsx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD -ldusx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, TBD -lhbrsx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD -lwbrsx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD -ldbrsx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD -stbsx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD -stbusx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, TBD -sthsx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD -sthusx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, TBD -stwsx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD -stwusx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, TBD -stdsx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD -stdusx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, TBD -sthbrsx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD -stwbrsx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD -stdbrsx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD +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 # FP LD/ST-Index-Shifted (w/Update) -lfsxs, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD -lfsuxs, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD -lfdxs, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD -lfduxs, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD -lfiwaxs, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD -lfiwzxs, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD -stfsxs, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD -stfsuxs, ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, TBD -stfdxs, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD -stfduxs, ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, TBD -stfiwxs, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD +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 # Bitmanip LUT2/3 operations. high cost high reward -grevlut, TBD, high, 3, yes, TBD, no, sv/bitmanip, 2R1W, TBD -grevluti, TBD, high, 3, yes, TBD, yes, sv/bitmanip, 1R1W, TBD -ternlogi, ls007, high, 2, yes, TBD, yes, sv/bitmanip, 3R1W1w, TBD -crternlogi, ls007, high, 5, yes, TBD, yes, sv/bitmanip, 3r1w, TBD -binlut, ls007, high, 6, yes, TBD, no, sv/bitmanip, 3R1W, TBD -crbinlut, ls007, high, 5, yes, TBD, no, sv/bitmanip, 3r1w, TBD +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 # Float-Load-Immediate (always saves one LD L1/2/3 D-Cache op) -fmvis, ls002, high, 5, yes, TBD, no, sv/bitmanip, 1W, TBD -fishmv, ls002, high, 5, yes, TBD, no, sv/bitmanip, 1R1W, TBD +fmvis, ls002, high, 5, yes, TBD, no, sv/bitmanip, 1W, SFFS +fishmv, ls002, high, 5, yes, TBD, no, sv/bitmanip, 1R1W, SFFS # Shift-and-Add (mitigates LD-ST-Shift; Cryptography e.g. twofish) shadd, ls003, med, 7, yes, TBD, no, sv/bitmanip, 2R1W1w, TBD shadduw, ls003, med, 7, yes, TBD, no, sv/bitmanip, 2R1W1w, TBD shaddw, ls003, med, 7, yes, TBD, no, sv/bitmanip, 2R1W1w, TBD # Audio-Video -absdu, TBD, TBD, 10, yes, TBD, no, sv/av_opcodes, 2R1W1w, TBD -avgadd, TBD, TBD, 10, yes, TBD, no, sv/av_opcodes, 2R1W1w, TBD +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, TBD +absaccs, TBD, TBD, 10, yes, TBD, no, sv/av_opcodes, 3R1W1w, SV/D absaccu, TBD, TBD, 10, yes, TBD, no, sv/av_opcodes, 3R1W1w, TBD # BMI group bmask, TBD, high, 5, yes, EXT0xx, yes, sv/vector_ops, 2R1W1w, SFFS