From eda9879fef1cddcd9fb41fca982a6b86e471905b Mon Sep 17 00:00:00 2001 From: Luke Kenneth Casson Leighton Date: Thu, 14 May 2020 10:43:00 +0100 Subject: [PATCH] move Logic pipeline ops to LOGICAL FunctionUnit --- openpower/isatables/major.csv | 12 ++++++------ openpower/isatables/minor_31.csv | 26 +++++++++++++------------- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/openpower/isatables/major.csv b/openpower/isatables/major.csv index 851e51238..4e1d63817 100644 --- a/openpower/isatables/major.csv +++ b/openpower/isatables/major.csv @@ -3,8 +3,8 @@ opcode,unit,internal op,in1,in2,in3,out,CR in,CR out,inv A,inv out,cry in,cry ou 13,ALU,OP_ADD,RA,CONST_SI,NONE,RT,0,0,0,0,ZERO,1,NONE,0,0,0,0,0,0,ONE,0,0,addic.,D 14,ALU,OP_ADD,RA_OR_ZERO,CONST_SI,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,0,addi,D 15,ALU,OP_ADD,RA_OR_ZERO,CONST_SI_HI,NONE,RT,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,0,addis,D -28,ALU,OP_AND,NONE,CONST_UI,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,ONE,0,0,andi.,B -29,ALU,OP_AND,NONE,CONST_UI_HI,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,ONE,0,0,andis.,B +28,LOGICAL,OP_AND,NONE,CONST_UI,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,ONE,0,0,andi.,B +29,LOGICAL,OP_AND,NONE,CONST_UI_HI,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,ONE,0,0,andis.,B 18,ALU,OP_B,NONE,CONST_LI,NONE,NONE,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,1,0,b,I 16,ALU,OP_BC,SPR,CONST_BD,NONE,SPR,1,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,1,0,bc,B 11,ALU,OP_CMP,RA,CONST_SI,NONE,NONE,0,1,1,0,ONE,0,NONE,0,0,0,0,0,1,NONE,0,0,cmpi,D @@ -18,8 +18,8 @@ opcode,unit,internal op,in1,in2,in3,out,CR in,CR out,inv A,inv out,cry in,cry ou 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 -24,ALU,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,ALU,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 +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 21,SHIFT_ROT,OP_RLC,NONE,CONST_SH32,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,0,RC,0,0,rlwinm,M 23,SHIFT_ROT,OP_RLC,NONE,RB,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,0,RC,0,0,rlwnm,M @@ -31,5 +31,5 @@ opcode,unit,internal op,in1,in2,in3,out,CR in,CR out,inv A,inv out,cry in,cry ou 37,LDST,OP_STORE,RA_OR_ZERO,CONST_SI,RS,NONE,0,0,0,0,ZERO,0,is4B,0,0,1,0,0,0,NONE,0,1,stwu,D 8,ALU,OP_ADD,RA,CONST_SI,NONE,RT,0,0,1,0,ONE,1,NONE,0,0,0,0,0,0,NONE,0,0,subfic,D 2,ALU,OP_TDI,RA,CONST_SI,NONE,NONE,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,1,tdi,D -26,ALU,OP_XOR,NONE,CONST_UI,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,0,xori,D -27,ALU,OP_XOR,NONE,CONST_UI_HI,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,0,xoris,D +26,LOGICAL,OP_XOR,NONE,CONST_UI,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,0,xori,D +27,LOGICAL,OP_XOR,NONE,CONST_UI_HI,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,0,xoris,D diff --git a/openpower/isatables/minor_31.csv b/openpower/isatables/minor_31.csv index f0cef26de..8ad96b593 100644 --- a/openpower/isatables/minor_31.csv +++ b/openpower/isatables/minor_31.csv @@ -9,8 +9,8 @@ opcode,unit,internal op,in1,in2,in3,out,CR in,CR out,inv A,inv out,cry in,cry ou 0b1011101010,ALU,OP_ADD,RA,CONST_M1,NONE,RT,0,0,0,0,CA,1,NONE,0,0,0,0,0,0,RC,0,0,addmeo,XO 0b0011001010,ALU,OP_ADD,RA,NONE,NONE,RT,0,0,0,0,CA,1,NONE,0,0,0,0,0,0,RC,0,0,addze,XO 0b1011001010,ALU,OP_ADD,RA,NONE,NONE,RT,0,0,0,0,CA,1,NONE,0,0,0,0,0,0,RC,0,0,addzeo,XO -0b0000011100,ALU,OP_AND,NONE,RB,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,and,X -0b0000111100,ALU,OP_AND,NONE,RB,RS,RA,0,0,1,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,andc,X +0b0000011100,LOGICAL,OP_AND,NONE,RB,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,and,X +0b0000111100,LOGICAL,OP_AND,NONE,RB,RS,RA,0,0,1,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,andc,X 0b0011111100,,,,,,,,,,,,,,,,,,,,,,,bperm,X 0b0000000000,ALU,OP_CMP,RA,RB,NONE,NONE,0,1,1,0,ONE,0,NONE,0,0,0,0,0,1,NONE,0,0,cmp,X 0b0111111100,ALU,OP_CMPB,NONE,RB,RS,RA,0,1,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,0,cmpb,X @@ -43,7 +43,7 @@ opcode,unit,internal op,in1,in2,in3,out,CR in,CR out,inv A,inv out,cry in,cry ou 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 -0b0100011100,ALU,OP_XOR,NONE,RB,RS,RA,0,0,0,1,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,eqv,X +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 0b1111011010,ALU,OP_EXTS,NONE,NONE,RS,RA,0,0,0,0,ZERO,0,is4B,0,0,0,0,0,0,RC,0,0,extsw,X @@ -124,17 +124,17 @@ opcode,unit,internal op,in1,in2,in3,out,CR in,CR out,inv A,inv out,cry in,cry ou 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 -0b0111011100,ALU,OP_AND,NONE,RB,RS,RA,0,0,0,1,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,nand,X +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 -0b0001111100,ALU,OP_OR,NONE,RB,RS,RA,0,0,0,1,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,nor,X -0b0110111100,ALU,OP_OR,NONE,RB,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,or,X -0b0110011100,ALU,OP_OR,NONE,RB,RS,RA,0,0,1,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,orc,X -0b0001111010,ALU,OP_POPCNT,NONE,NONE,RS,RA,0,0,0,0,ZERO,0,is1B,0,0,0,0,0,0,NONE,0,0,popcntb,X -0b0111111010,ALU,OP_POPCNT,NONE,NONE,RS,RA,0,0,0,0,ZERO,0,is8B,0,0,0,0,0,0,NONE,0,0,popcntd,X -0b0101111010,ALU,OP_POPCNT,NONE,NONE,RS,RA,0,0,0,0,ZERO,0,is4B,0,0,0,0,0,0,NONE,0,0,popcntw,X -0b0010111010,ALU,OP_PRTY,NONE,NONE,RS,RA,0,0,0,0,ZERO,0,is8B,0,0,0,0,0,0,NONE,0,0,prtyd,X -0b0010011010,ALU,OP_PRTY,NONE,NONE,RS,RA,0,0,0,0,ZERO,0,is4B,0,0,0,0,0,0,NONE,0,0,prtyw,X +0b0001111100,LOGICAL,OP_OR,NONE,RB,RS,RA,0,0,0,1,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,nor,X +0b0110111100,LOGICAL,OP_OR,NONE,RB,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,or,X +0b0110011100,LOGICAL,OP_OR,NONE,RB,RS,RA,0,0,1,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,orc,X +0b0001111010,LOGICAL,OP_POPCNT,NONE,NONE,RS,RA,0,0,0,0,ZERO,0,is1B,0,0,0,0,0,0,NONE,0,0,popcntb,X +0b0111111010,LOGICAL,OP_POPCNT,NONE,NONE,RS,RA,0,0,0,0,ZERO,0,is8B,0,0,0,0,0,0,NONE,0,0,popcntd,X +0b0101111010,LOGICAL,OP_POPCNT,NONE,NONE,RS,RA,0,0,0,0,ZERO,0,is4B,0,0,0,0,0,0,NONE,0,0,popcntw,X +0b0010111010,LOGICAL,OP_PRTY,NONE,NONE,RS,RA,0,0,0,0,ZERO,0,is8B,0,0,0,0,0,0,NONE,0,0,prtyd,X +0b0010011010,LOGICAL,OP_PRTY,NONE,NONE,RS,RA,0,0,0,0,ZERO,0,is4B,0,0,0,0,0,0,NONE,0,0,prtyw,X 0b0010000000,,,,,,,,,,,,,,,,,,,,,,,setb,VX 0b0000011011,SHIFT_ROT,OP_SHL,NONE,RB,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,sld,X 0b0000011000,SHIFT_ROT,OP_SHL,NONE,RB,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,1,0,RC,0,0,slw,X @@ -173,4 +173,4 @@ opcode,unit,internal op,in1,in2,in3,out,CR in,CR out,inv A,inv out,cry in,cry ou 0b1001010110,ALU,OP_NOP,NONE,NONE,NONE,NONE,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,1,sync,X 0b0001000100,,,,,,,,,,,,,,,,,,,,,,,td,X 0b0000000100,ALU,OP_TW,RA,RB,NONE,NONE,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,NONE,0,1,tw,X -0b0100111100,ALU,OP_XOR,NONE,RB,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,xor,X +0b0100111100,LOGICAL,OP_XOR,NONE,RB,RS,RA,0,0,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,xor,X -- 2.30.2