From 510f2d98dbf62bae1a545dbb3c6820a26a87ba8e Mon Sep 17 00:00:00 2001 From: Luke Kenneth Casson Leighton Date: Wed, 20 May 2020 01:26:59 +0100 Subject: [PATCH] move DIV and MOD to DIV Function Unit, MUL to MUL Function Unit --- openpower/isatables/major.csv | 2 +- openpower/isatables/minor_31.csv | 64 ++++++++++++++++---------------- 2 files changed, 33 insertions(+), 33 deletions(-) diff --git a/openpower/isatables/major.csv b/openpower/isatables/major.csv index 8107ec2c8..fcc6a9025 100644 --- a/openpower/isatables/major.csv +++ b/openpower/isatables/major.csv @@ -17,7 +17,7 @@ opcode,unit,internal op,in1,in2,in3,out,CR in,CR out,inv A,inv out,cry in,cry ou 41,LDST,OP_LOAD,RA_OR_ZERO,CONST_SI,NONE,RT,0,0,0,0,ZERO,0,is2B,0,0,1,0,0,0,NONE,0,1,lhzu,D 32,LDST,OP_LOAD,RA_OR_ZERO,CONST_SI,NONE,RT,0,0,0,0,ZERO,0,is4B,0,0,0,0,0,0,NONE,0,1,lwz,D 33,LDST,OP_LOAD,RA_OR_ZERO,CONST_SI,NONE,RT,0,0,0,0,ZERO,0,is4B,0,0,1,0,0,0,NONE,0,1,lwzu,D -7,ALU,OP_MUL_L64,RA,CONST_SI,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,0,1,NONE,0,0,mulli,D +7,MUL,OP_MUL_L64,RA,CONST_SI,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,0,1,NONE,0,0,mulli,D 24,LOGICAL,OP_OR,NONE,CONST_UI,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,0,ori,D 25,LOGICAL,OP_OR,NONE,CONST_UI_HI,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,0,oris,D 20,SHIFT_ROT,OP_RLC,RA,CONST_SH32,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,0,RC,0,0,rlwimi,M diff --git a/openpower/isatables/minor_31.csv b/openpower/isatables/minor_31.csv index 409a645ac..939af5e6d 100644 --- a/openpower/isatables/minor_31.csv +++ b/openpower/isatables/minor_31.csv @@ -27,22 +27,22 @@ opcode,unit,internal op,in1,in2,in3,out,CR in,CR out,inv A,inv out,cry in,cry ou 0b0100010110,ALU,OP_NOP,NONE,NONE,NONE,NONE,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,1,dcbt,X 0b0011110110,ALU,OP_NOP,NONE,NONE,NONE,NONE,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,1,dcbtst,X 0b1111110110,,,,,,,,,,,,,,,,,,,,,,,dcbz,X -0b0110001001,ALU,OP_DIVE,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,divdeu,XO -0b1110001001,ALU,OP_DIVE,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,divdeuo,XO -0b0110001011,ALU,OP_DIVE,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,0,RC,0,0,divweu,XO -0b1110001011,ALU,OP_DIVE,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,0,RC,0,0,divweuo,XO -0b0110101001,ALU,OP_DIVE,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,1,RC,0,0,divde,XO -0b1110101001,ALU,OP_DIVE,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,1,RC,0,0,divdeo,XO -0b0110101011,ALU,OP_DIVE,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,1,RC,0,0,divwe,XO -0b1110101011,ALU,OP_DIVE,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,1,RC,0,0,divweo,XO -0b0111001001,ALU,OP_DIV,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,divdu,XO -0b1111001001,ALU,OP_DIV,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,divduo,XO -0b0111001011,ALU,OP_DIV,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,0,RC,0,0,divwu,XO -0b1111001011,ALU,OP_DIV,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,0,RC,0,0,divwuo,XO -0b0111101001,ALU,OP_DIV,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,1,RC,0,0,divd,XO -0b1111101001,ALU,OP_DIV,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,1,RC,0,0,divdo,XO -0b0111101011,ALU,OP_DIV,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,1,RC,0,0,divw,XO -0b1111101011,ALU,OP_DIV,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,1,RC,0,0,divwo,XO +0b0110001001,DIV,OP_DIVE,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,divdeu,XO +0b1110001001,DIV,OP_DIVE,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,divdeuo,XO +0b0110001011,DIV,OP_DIVE,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,0,RC,0,0,divweu,XO +0b1110001011,DIV,OP_DIVE,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,0,RC,0,0,divweuo,XO +0b0110101001,DIV,OP_DIVE,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,1,RC,0,0,divde,XO +0b1110101001,DIV,OP_DIVE,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,1,RC,0,0,divdeo,XO +0b0110101011,DIV,OP_DIVE,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,1,RC,0,0,divwe,XO +0b1110101011,DIV,OP_DIVE,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,1,RC,0,0,divweo,XO +0b0111001001,DIV,OP_DIV,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,divdu,XO +0b1111001001,DIV,OP_DIV,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,divduo,XO +0b0111001011,DIV,OP_DIV,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,0,RC,0,0,divwu,XO +0b1111001011,DIV,OP_DIV,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,0,RC,0,0,divwuo,XO +0b0111101001,DIV,OP_DIV,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,1,RC,0,0,divd,XO +0b1111101001,DIV,OP_DIV,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,1,RC,0,0,divdo,XO +0b0111101011,DIV,OP_DIV,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,1,RC,0,0,divw,XO +0b1111101011,DIV,OP_DIV,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,1,RC,0,0,divwo,XO 0b0100011100,LOGICAL,OP_XOR,NONE,RB,RS,RA,0,0,0,1,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,eqv,X 0b1110111010,ALU,OP_EXTS,NONE,NONE,RS,RA,0,0,0,0,ZERO,0,is1B,0,0,0,0,0,0,RC,0,0,extsb,X 0b1110011010,ALU,OP_EXTS,NONE,NONE,RS,RA,0,0,0,0,ZERO,0,is2B,0,0,0,0,0,0,RC,0,0,extsh,X @@ -106,24 +106,24 @@ opcode,unit,internal op,in1,in2,in3,out,CR in,CR out,inv A,inv out,cry in,cry ou 0b1001000000,,,,,,,,,,,,,,,,,,,,,,,mcrxrx,X 0b0000010011,CR,OP_MFCR,NONE,NONE,NONE,RT,1,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,0,mfcr/mfocrf,XFX 0b0101010011,ALU,OP_MFSPR,SPR,NONE,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,0,mfspr,XFX -0b0100001001,ALU,OP_MOD,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,0,modud,X -0b0100001011,ALU,OP_MOD,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,0,NONE,0,0,moduw,X -0b1100001001,ALU,OP_MOD,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,1,NONE,0,0,modsd,X -0b1100001011,ALU,OP_MOD,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,1,NONE,0,0,modsw,X +0b0100001001,DIV,OP_MOD,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,0,modud,X +0b0100001011,DIV,OP_MOD,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,0,NONE,0,0,moduw,X +0b1100001001,DIV,OP_MOD,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,1,NONE,0,0,modsd,X +0b1100001011,DIV,OP_MOD,RA,RB,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,1,NONE,0,0,modsw,X 0b0010010000,CR,OP_MTCRF,NONE,NONE,RS,NONE,0,1,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,0,mtcrf/mtocrf,XFX 0b0111010011,ALU,OP_MTSPR,NONE,NONE,RS,SPR,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,0,mtspr,XFX -0b0001001001,ALU,OP_MUL_H64,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,0,1,RC,0,0,mulhd,XO -0b0000001001,ALU,OP_MUL_H64,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,mulhdu,XO -0b0001001011,ALU,OP_MUL_H32,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,1,1,RC,0,0,mulhw,XO -0b0000001011,ALU,OP_MUL_H32,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,1,0,RC,0,0,mulhwu,XO -0b1001001001,ALU,OP_MUL_H64,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,0,1,RC,0,0,mulhd,XO -0b1000001001,ALU,OP_MUL_H64,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,mulhdu,XO -0b1001001011,ALU,OP_MUL_H32,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,1,1,RC,0,0,mulhw,XO -0b1000001011,ALU,OP_MUL_H32,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,1,0,RC,0,0,mulhwu,XO -0b0011101001,ALU,OP_MUL_L64,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,0,1,RC,0,0,mulld,XO -0b1011101001,ALU,OP_MUL_L64,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,0,1,RC,0,0,mulldo,XO -0b0011101011,ALU,OP_MUL_L64,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,1,1,RC,0,0,mullw,XO -0b1011101011,ALU,OP_MUL_L64,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,1,1,RC,0,0,mullwo,XO +0b0001001001,MUL,OP_MUL_H64,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,0,1,RC,0,0,mulhd,XO +0b0000001001,MUL,OP_MUL_H64,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,mulhdu,XO +0b0001001011,MUL,OP_MUL_H32,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,1,1,RC,0,0,mulhw,XO +0b0000001011,MUL,OP_MUL_H32,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,1,0,RC,0,0,mulhwu,XO +0b1001001001,MUL,OP_MUL_H64,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,0,1,RC,0,0,mulhd,XO +0b1000001001,MUL,OP_MUL_H64,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,mulhdu,XO +0b1001001011,MUL,OP_MUL_H32,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,1,1,RC,0,0,mulhw,XO +0b1000001011,MUL,OP_MUL_H32,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,1,0,RC,0,0,mulhwu,XO +0b0011101001,MUL,OP_MUL_L64,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,0,1,RC,0,0,mulld,XO +0b1011101001,MUL,OP_MUL_L64,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,0,1,RC,0,0,mulldo,XO +0b0011101011,MUL,OP_MUL_L64,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,1,1,RC,0,0,mullw,XO +0b1011101011,MUL,OP_MUL_L64,RA,RB,NONE,RT,0,1,0,0,ZERO,0,NONE,0,0,0,0,1,1,RC,0,0,mullwo,XO 0b0111011100,LOGICAL,OP_AND,NONE,RB,RS,RA,0,0,0,1,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,nand,X 0b0001101000,ALU,OP_ADD,RA,NONE,NONE,RT,0,0,1,0,ONE,0,NONE,0,0,0,0,0,0,RC,0,0,neg,XO 0b1001101000,ALU,OP_ADD,RA,NONE,NONE,RT,0,0,1,0,ONE,0,NONE,0,0,0,0,0,0,RC,0,0,nego,XO -- 2.30.2