@@ -120,8 +120,10 @@ class VXForm_VRTAB5<bits<11> xo, dag OOL, dag IOL, string asmstr,
120120 let Inst{21...31} = xo;
121121}
122122
123- class XX3Form_XTAB6<bits<8> xo, dag OOL, dag IOL, string asmstr,
124- list<dag> pattern> : I<60, OOL, IOL, asmstr, NoItinerary> {
123+ class XX3Form_XTAB6<bits<6> opcode, bits<8> xo, dag OOL, dag IOL, string asmstr,
124+ list<dag> pattern>
125+ : I<opcode, OOL, IOL, asmstr, NoItinerary> {
126+
125127 bits<6> XT;
126128 bits<6> XA;
127129 bits<6> XB;
@@ -137,7 +139,6 @@ class XX3Form_XTAB6<bits<8> xo, dag OOL, dag IOL, string asmstr,
137139 let Inst{31} = XT{5};
138140}
139141
140-
141142//-------------------------- Instruction definitions -------------------------//
142143
143144// Predicate combinations available:
@@ -217,24 +218,24 @@ let Predicates = [HasVSX, IsISAFuture] in {
217218 "vucmprlh $VRT, $VRA, $VRB", []>;
218219
219220 // VSX Vector Integer Arithmetic Instructions
220- def XVADDUWM : XX3Form_XTAB6<131, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
221+ def XVADDUWM : XX3Form_XTAB6<60, 131, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
221222 "xvadduwm $XT, $XA, $XB", []>;
222- def XVADDUHM : XX3Form_XTAB6<139, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
223+ def XVADDUHM : XX3Form_XTAB6<60, 139, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
223224 "xvadduhm $XT, $XA, $XB", []>;
224- def XVSUBUWM: XX3Form_XTAB6<147, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
225+ def XVSUBUWM: XX3Form_XTAB6<60, 147, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
225226 "xvsubuwm $XT, $XA, $XB", []>;
226- def XVSUBUHM: XX3Form_XTAB6<155, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
227+ def XVSUBUHM: XX3Form_XTAB6<60, 155, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
227228 "xvsubuhm $XT, $XA, $XB", []>;
228- def XVMULUWM: XX3Form_XTAB6<163, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
229+ def XVMULUWM: XX3Form_XTAB6<60, 163, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
229230 "xvmuluwm $XT, $XA, $XB", []>;
230- def XVMULUHM: XX3Form_XTAB6<171, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
231+ def XVMULUHM: XX3Form_XTAB6<60, 171, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
231232 "xvmuluhm $XT, $XA, $XB", []>;
232- def XVMULHSW: XX3Form_XTAB6<179, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
233+ def XVMULHSW: XX3Form_XTAB6<60, 179, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
233234 "xvmulhsw $XT, $XA, $XB", []>;
234- def XVMULHSH: XX3Form_XTAB6<187, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
235+ def XVMULHSH: XX3Form_XTAB6<60, 187, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
235236 "xvmulhsh $XT, $XA, $XB", []>;
236- def XVMULHUW: XX3Form_XTAB6<114, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
237+ def XVMULHUW: XX3Form_XTAB6<60, 114, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
237238 "xvmulhuw $XT, $XA, $XB", []>;
238- def XVMULHUH: XX3Form_XTAB6<122, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
239+ def XVMULHUH: XX3Form_XTAB6<60, 122, (outs vsrc:$XT), (ins vsrc:$XA, vsrc:$XB),
239240 "xvmulhuh $XT, $XA, $XB", []>;
240241}
0 commit comments