From: Luke Kenneth Casson Leighton Date: Sun, 9 Apr 2023 08:57:19 +0000 (+0100) Subject: add regs column X-Git-Tag: opf_rfc_ls012_v1~52 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=2ba31dbef32749df3bf069ac5ec1a4c22f0d67c5;p=libreriscv.git add regs column --- diff --git a/openpower/sv/rfc/ls012/optable.csv b/openpower/sv/rfc/ls012/optable.csv index ca53931e2..721733fcc 100644 --- a/openpower/sv/rfc/ls012/optable.csv +++ b/openpower/sv/rfc/ls012/optable.csv @@ -1,146 +1,146 @@ -op, rfc, priority, cost, SVP64, group, PO1, page +op, rfc, priority, cost, SVP64, group, PO1, page, regs # LD/ST-Postincrement (FP TODO) -lbzup, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload -lbzupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload -lhzup, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload -lhzupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload -lhaup, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload -lhaupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload -lwzup, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload -lwzupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload -lwaupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload -ldup, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload -ldupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload -stbup, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedstore -stbupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedstore -sthup, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedstore -sthupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedstore -stwup, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedstore -stwupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedstore -stdup, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedstore -stdupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedstore -FP-LD, ls011, high, ??, yes, EXT2xx, ??, TODO -FP-ST, ls011, high, ??, yes, EXT2xx, ??, TODO +lbzup, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload, +lbzupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload, +lhzup, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload, +lhzupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload, +lhaup, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload, +lhaupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload, +lwzup, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload, +lwzupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload, +lwaupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload, +ldup, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload, +ldupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedload, +stbup, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedstore, +stbupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedstore, +sthup, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedstore, +sthupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedstore, +stwup, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedstore, +stwupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedstore, +stdup, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedstore, +stdupx, ls011, high, ??, yes, EXT2xx, ??, isa/pifixedstore, +FP-LD, ls011, high, ??, yes, EXT2xx, ??, TODO, +FP-ST, ls011, high, ??, yes, EXT2xx, ??, TODO, # Bitmanip LUT2/3 operations. high cost high reward -grevlut, TBD, high, 3, yes, TBD, no, sv/bitmanip -grevluti, TBD, high, 3, yes, TBD, yes, sv/bitmanip -ternlogi, ls007, high, 2, yes, TBD, yes, sv/bitmanip -crternlogi, ls007, high, 5, yes, TBD, yes, sv/bitmanip -binlut, ls007, high, 6, yes, TBD, no, sv/bitmanip -crbinlut, ls007, high, 5, yes, TBD, no, sv/bitmanip +grevlut, TBD, high, 3, yes, TBD, no, sv/bitmanip, 2R1W +grevluti, TBD, high, 3, yes, TBD, yes, sv/bitmanip, 1R1W +ternlogi, ls007, high, 2, yes, TBD, yes, sv/bitmanip, 3R1W1w +crternlogi, ls007, high, 5, yes, TBD, yes, sv/bitmanip, 3r1w +binlut, ls007, high, 6, yes, TBD, no, sv/bitmanip, 3R1W +crbinlut, ls007, high, 5, yes, TBD, no, sv/bitmanip, 3r1w # Float-Load-Immediate (always saves one LD L1/2/3 D-Cache op) -fmvis, ls002, high, 5, yes, TBD, no, sv/bitmanip -fishmv, ls002, high, 5, yes, TBD, no, sv/bitmanip +fmvis, ls002, high, 5, yes, TBD, no, sv/bitmanip, 1W +fishmv, ls002, high, 5, yes, TBD, no, sv/bitmanip, 1R1W # Shift-and-Add (mitigates LD-ST-Shift; Cryptography e.g. twofish) -shadd, ls003, med, 7, yes, TBD, no, sv/bitmanip -shadduw, ls003, med, 7, yes, TBD, no, sv/bitmanip +shadd, ls003, med, 7, yes, TBD, no, sv/bitmanip, 2R1W1w +shadduw, ls003, med, 7, yes, TBD, no, sv/bitmanip, 2R1W1w # Audio-Video -absdu, TBD, TBD, 10, yes, TBD, no, sv/av_opcodes -avgadd, TBD, TBD, 10, yes, TBD, no, sv/av_opcodes -minmax, TBD, TBD, 10, yes, TBD, no, sv/av_opcodes -absaccs, TBD, TBD, 10, yes, TBD, no, sv/av_opcodes -absaccu, TBD, TBD, 10, yes, TBD, no, sv/av_opcodes +absdu, TBD, TBD, 10, yes, TBD, no, sv/av_opcodes, 2R1W1w +avgadd, TBD, TBD, 10, yes, TBD, no, sv/av_opcodes, 2R1W1w +minmax, TBD, TBD, 10, yes, TBD, no, sv/av_opcodes, 2R1W1w +absaccs, TBD, TBD, 10, yes, TBD, no, sv/av_opcodes, 3R1W1w +absaccu, TBD, TBD, 10, yes, TBD, no, sv/av_opcodes, 3R1W1w # BMI group -bmask, TBD, high, 5, yes, TBD, yes, sv/vector_ops -cprop, TBD, high, 5, yes, TBD, yes, sv/vector_ops +bmask, TBD, high, 5, yes, TBD, yes, sv/vector_ops, 2R1W1w +cprop, TBD, high, 5, yes, TBD, yes, sv/vector_ops, 2R1W1w # SVP64 Management. -setvl, ls008, high, 5, no, EXT0xx, yes, sv/setvl -svstep, ls008, high, 5, no, EXT0xx, yes, sv/svstep -svremap, ls009, high, 5, no, EXT0xx, yes, sv/remap -svshape, ls009, high, 5, no, EXT0xx, yes, sv/remap -svshape2, ls009, high, 5, no, EXT0xx, yes, sv/remap -svindex, ls009, high, 5, no, EXT0xx, yes, sv/remap +setvl, ls008, high, 5, no, EXT0xx, yes, sv/setvl, 3R2W +svstep, ls008, high, 5, no, EXT0xx, yes, sv/svstep, 1R2W1w +svremap, ls009, high, 5, no, EXT0xx, yes, sv/remap, 1R1W +svshape, ls009, high, 5, no, EXT0xx, yes, sv/remap, 5R5W +svshape2, ls009, high, 5, no, EXT0xx, yes, sv/remap, 5R5W +svindex, ls009, high, 5, no, EXT0xx, yes, sv/remap, 5R5W # GPU swizzle -mv.swizzle, TBD, TBD, 4, yes, TBD, yes, sv/mv.swizzle -fmv.swizzle, TBD, TBD, 4, yes, TBD, yes, sv/mv.swizzle +mv.swizzle, TBD, TBD, 4, yes, TBD, yes, sv/mv.swizzle, 2R2W +fmv.swizzle, TBD, TBD, 4, yes, TBD, yes, sv/mv.swizzle, 2R2W # CR weirds -crrweird, TBD, high, 8, yes, TBD, no, sv/cr_int_predication -mfcrweird, TBD, high, 8, yes, TBD, no, sv/cr_int_predication -mtcrrweird, TBD, high, 9, yes, TBD, no, sv/cr_int_predication -mtcrweird, TBD, high, 9, yes, TBD, no, sv/cr_int_predication -crweirder, TBD, high, 9, yes, TBD, no, sv/cr_int_predication -mcrfm, TBD, high, 9, yes, EXT0xx, no, sv/cr_int_predication +crrweird, TBD, high, 8, yes, TBD, no, sv/cr_int_predication, 1r1W1w +mfcrweird, TBD, high, 8, yes, TBD, no, sv/cr_int_predication, +mtcrrweird, TBD, high, 9, yes, TBD, no, sv/cr_int_predication, +mtcrweird, TBD, high, 9, yes, TBD, no, sv/cr_int_predication, +crweirder, TBD, high, 9, yes, TBD, no, sv/cr_int_predication, +mcrfm, TBD, high, 9, yes, EXT0xx, no, sv/cr_int_predication, # fclass (Scalar variant of xvtstdcsp) -fptstp(s), TBD, high, 10, yes, EXT0xx, no, sv/fclass +fptstp(s), TBD, high, 10, yes, EXT0xx, no, sv/fclass, 1R1w # INT<->FP mv -fmvfg(s), ls006, high, 10, yes, EXT0xx, no, sv/int_fp_mv -fcvtfg(s), ls006, high, 10, yes, EXT0xx, no, sv/int_fp_mv -fcvttg(s), ls006, high, 10, yes, EXT0xx, no, sv/int_fp_mv -fcvtstg(s), ls006, high, 10, yes, EXT0xx, no, sv/int_fp_mv +fmvfg(s), ls006, high, 10, yes, EXT0xx, no, sv/int_fp_mv, +fcvtfg(s), ls006, high, 10, yes, EXT0xx, no, sv/int_fp_mv, +fcvttg(s), ls006, high, 10, yes, EXT0xx, no, sv/int_fp_mv, +fcvtstg(s), ls006, high, 10, yes, EXT0xx, no, sv/int_fp_mv, # Big-Integer Chained 3-in 2-out (64-bit Carry) -dsld, ls003, high, 5, yes, EXT0xx, no, sv/biginteger -dsrd, ls003, high, 5, yes, EXT0xx, no, sv/biginteger -maddedu, ls003, high, 6, yes, EXT0xx, no, sv/biginteger -maddedus, ls003, high, 6, yes, EXT0xx, no, sv/biginteger -divmod2du, ls003, high, 6, yes, EXT0xx, no, sv/biginteger +dsld, ls003, high, 5, yes, EXT0xx, no, sv/biginteger, 3R2W1w +dsrd, ls003, high, 5, yes, EXT0xx, no, sv/biginteger, 3R2W1w +maddedu, ls003, high, 6, yes, EXT0xx, no, sv/biginteger, 3R2W +maddedus, ls003, high, 6, yes, EXT0xx, no, sv/biginteger, 3R2W +divmod2du, ls003, high, 6, yes, EXT0xx, no, sv/biginteger, 3R2W1w # FP DCT/FFT Butterfly (2/3-in 2-out) -ffadd(s), TBD, med, 10, yes, EXT2xx, no, isa/svfparith -ffsub(s), TBD, med, 10, yes, EXT2xx, no, isa/svfparith -ffmul(s), TBD, med, 10, yes, EXT2xx, no, isa/svfparith -ffdiv(s), TBD, med, 10, yes, EXT2xx, no, isa/svfparith -fdmadd(s), TBD, med, 5, yes, EXT2xx, no, isa/svfparith -ffmadd(s), TBD, med, 5, yes, EXT2xx, no, isa/svfparith -ffmsub(s), TBD, med, 5, yes, EXT2xx, no, isa/svfparith -ffnmadd(s), TBD, med, 5, yes, EXT2xx, no, isa/svfparith -ffnmsub(s), TBD, med, 5, yes, EXT2xx, no, isa/svfparith +ffadd(s), TBD, med, 10, yes, EXT2xx, no, isa/svfparith, 2R1W1w +ffsub(s), TBD, med, 10, yes, EXT2xx, no, isa/svfparith, 2R1W1w +ffmul(s), TBD, med, 10, yes, EXT2xx, no, isa/svfparith, 2R1W1w +ffdiv(s), TBD, med, 10, yes, EXT2xx, no, isa/svfparith, 2R1W1w +fdmadd(s), TBD, med, 5, yes, EXT2xx, no, isa/svfparith, 3R2W1w +ffmadd(s), TBD, med, 5, yes, EXT2xx, no, isa/svfparith, 3R2W1w +ffmsub(s), TBD, med, 5, yes, EXT2xx, no, isa/svfparith, 3R2W1w +ffnmadd(s), TBD, med, 5, yes, EXT2xx, no, isa/svfparith, 3R2W1w +ffnmsub(s), TBD, med, 5, yes, EXT2xx, no, isa/svfparith, 3R2W1w # Trigonometric (1-arg) -fsin(s), TBD, high, 10, yes, EXT0xx, no, transcendentals -fcos(s), TBD, high, 10, yes, EXT0xx, no, transcendentals -ftan(s), TBD, high, 10, yes, EXT0xx, no, transcendentals -fasin(s), TBD, low, 10, yes, EXT2xx, no, transcendentals -facos(s), TBD, low, 10, yes, EXT2xx, no, transcendentals -fatan(s), TBD, low, 10, yes, EXT2xx, no, transcendentals -fsinpi(s), TBD, high, 10, yes, TBD, no, transcendentals -fcospi(s), TBD, high, 10, yes, TBD, no, transcendentals -ftanpi(s), TBD, high, 10, yes, TBD, no, transcendentals -fasinpi(s), TBD, high, 10, yes, EXT2xx, no, transcendentals -facospi(s), TBD, high, 10, yes, EXT2xx, no, transcendentals -fatanpi(s), TBD, high, 10, yes, EXT2xx, no, transcendentals -fsinh(s), TBD, low, 10, yes, EXT2xx, no, transcendentals -fcosh(s), TBD, low, 10, yes, EXT2xx, no, transcendentals -ftanh(s), TBD, low, 10, yes, EXT2xx, no, transcendentals -fasinh(s), TBD, low, 10, yes, EXT2xx, no, transcendentals -facosh(s), TBD, low, 10, yes, EXT2xx, no, transcendentals -fatanh(s), TBD, low, 10, yes, EXT2xx, no, transcendentals +fsin(s), TBD, high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w +fcos(s), TBD, high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w +ftan(s), TBD, high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w +fasin(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w +facos(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w +fatan(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w +fsinpi(s), TBD, high, 10, yes, TBD, no, transcendentals, 1R1W1w +fcospi(s), TBD, high, 10, yes, TBD, no, transcendentals, 1R1W1w +ftanpi(s), TBD, high, 10, yes, TBD, no, transcendentals, 1R1W1w +fasinpi(s), TBD, high, 10, yes, EXT2xx, no, transcendentals, 1R1W1w +facospi(s), TBD, high, 10, yes, EXT2xx, no, transcendentals, 1R1W1w +fatanpi(s), TBD, high, 10, yes, EXT2xx, no, transcendentals, 1R1W1w +fsinh(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w +fcosh(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w +ftanh(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w +fasinh(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w +facosh(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w +fatanh(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w # Transcendentals (1-arg) -frsqrt(s), TBD, high, 10, yes, EXT0xx, no, transcendentals -fcbrt(s), TBD, low, 10, yes, EXT2xx, no, transcendentals -frecip(s), TBD, high, 10, yes, EXT0xx, no, transcendentals -fexp2m1(s), TBD, high, 10, yes, EXT0xx, no, transcendentals -flog2p1(s), TBD, high, 10, yes, EXT0xx, no, transcendentals -fexp2(s), TBD, high, 10, yes, EXT0xx, no, transcendentals -flog2(s), TBD, high, 10, yes, EXT0xx, no, transcendentals -fexpm1(s), TBD, med, 10, yes, TBD, no, transcendentals -flogp1(s), TBD, med, 10, yes, TBD, no, transcendentals -fexp(s), TBD, med, 10, yes, TBD, no, transcendentals -flog(s), TBD, med, 10, yes, TBD, no, transcendentals -fexp10m1(s), TBD, med, 10, yes, TBD, no, transcendentals -flog10p1(s), TBD, med, 10, yes, TBD, no, transcendentals -fexp10(s), TBD, med, 10, yes, TBD, no, transcendentals -flog10(s), TBD, med, 10, yes, TBD, no, transcendentals +frsqrt(s), TBD, high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w +fcbrt(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w +frecip(s), TBD, high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w +fexp2m1(s), TBD, high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w +flog2p1(s), TBD, high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w +fexp2(s), TBD, high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w +flog2(s), TBD, high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w +fexpm1(s), TBD, med, 10, yes, TBD, no, transcendentals, 1R1W1w +flogp1(s), TBD, med, 10, yes, TBD, no, transcendentals, 1R1W1w +fexp(s), TBD, med, 10, yes, TBD, no, transcendentals, 1R1W1w +flog(s), TBD, med, 10, yes, TBD, no, transcendentals, 1R1W1w +fexp10m1(s), TBD, med, 10, yes, TBD, no, transcendentals, 1R1W1w +flog10p1(s), TBD, med, 10, yes, TBD, no, transcendentals, 1R1W1w +fexp10(s), TBD, med, 10, yes, TBD, no, transcendentals, 1R1W1w +flog10(s), TBD, med, 10, yes, TBD, no, transcendentals, 1R1W1w # Transcendentals (2-arg) -fatan2(s), TBD, low, 10, yes, EXT2xx, no, transcendentals -fatan2pi(s), TBD, low, 10, yes, EXT2xx, no, transcendentals -fpow(s), TBD, low, 10, yes, EXT2xx, no, transcendentals -fpown(s), TBD, low, 10, yes, EXT2xx, no, transcendentals -fpowr(s), TBD, low, 10, yes, EXT2xx, no, transcendentals -frootn(s), TBD, low, 10, yes, EXT2xx, no, transcendentals -fhypot(s), TBD, TBD, 10, yes, TBD, no, transcendentals -fminnum08(s), TBD, TBD, 10, yes, TBD, no, transcendentals -fmaxnum08(s), TBD, TBD, 10, yes, TBD, no, transcendentals -fmin19(s), TBD, TBD, 10, yes, TBD, no, transcendentals -fmax19(s), TBD, TBD, 10, yes, TBD, no, transcendentals -fminnum19(s), TBD, TBD, 10, yes, TBD, no, transcendentals -fmaxnum19(s), TBD, TBD, 10, yes, TBD, no, transcendentals -fminc(s), TBD, TBD, 10, yes, TBD, no, transcendentals -fmaxc(s), TBD, TBD, 10, yes, TBD, no, transcendentals -fminmagnum08(s), TBD, TBD, 10, yes, TBD, no, transcendentals -fmaxmagnum08(s), TBD, TBD, 10, yes, TBD, no, transcendentals -fminmag19(s), TBD, TBD, 10, yes, TBD, no, transcendentals -fmaxmag19(s), TBD, TBD, 10, yes, TBD, no, transcendentals -fminmagnum19(s), TBD, TBD, 10, yes, TBD, no, transcendentals -fmaxmagnum19(s), TBD, TBD, 10, yes, TBD, no, transcendentals -fminmagc(s), TBD, TBD, 10, yes, TBD, no, transcendentals -fmaxmagc(s), TBD, TBD, 10, yes, TBD, no, transcendentals -fmod(s), TBD, TBD, 10, yes, TBD, no, transcendentals -fremainder(s), TBD, TBD, 10, yes, TBD, no, transcendentals +fatan2(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 2R1W1w +fatan2pi(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 2R1W1w +fpow(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 2R1W1w +fpown(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 2R1W1w +fpowr(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 2R1W1w +frootn(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 2R1W1w +fhypot(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w +fminnum08(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w +fmaxnum08(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w +fmin19(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w +fmax19(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w +fminnum19(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w +fmaxnum19(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w +fminc(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w +fmaxc(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w +fminmagnum08(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w +fmaxmagnum08(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w +fminmag19(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w +fmaxmag19(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w +fminmagnum19(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w +fmaxmagnum19(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w +fminmagc(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w +fmaxmagc(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w +fmod(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w +fremainder(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w