move DIV and MOD to DIV Function Unit, MUL to MUL Function Unit
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Wed, 20 May 2020 00:26:59 +0000 (01:26 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Wed, 20 May 2020 00:26:59 +0000 (01:26 +0100)
openpower/isatables/major.csv
openpower/isatables/minor_31.csv

index 8107ec2c89f2ab370efbf8a412200e492fa1f9a9..fcc6a9025d4a6967e7052170ac98caf67b8a63de 100644 (file)
@@ -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
index 409a645ac2e00feb2d845b4114baa6bf68d470f9..939af5e6d0d1386281f10a4dcffefa406a0f7fc1 100644 (file)
@@ -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