Index: llvm/trunk/lib/Target/PowerPC/PPCInstrFormats.td =================================================================== --- llvm/trunk/lib/Target/PowerPC/PPCInstrFormats.td +++ llvm/trunk/lib/Target/PowerPC/PPCInstrFormats.td @@ -2131,6 +2131,27 @@ let Inst{31} = RC; } +class Z23Form_8 opcode, bits<8> xo, dag OOL, dag IOL, string asmstr, + InstrItinClass itin, list pattern> + : I { + bits<5> VRT; + bit R; + bits<5> VRB; + bits<2> idx; + + let Pattern = pattern; + + bit RC = 0; // set by isDOT + + let Inst{6-10} = VRT; + let Inst{11-14} = 0; + let Inst{15} = R; + let Inst{16-20} = VRB; + let Inst{21-22} = idx; + let Inst{23-30} = xo; + let Inst{31} = RC; +} + //===----------------------------------------------------------------------===// class Pseudo pattern> : I<0, OOL, IOL, asmstr, NoItinerary> { Index: llvm/trunk/lib/Target/PowerPC/PPCInstrVSX.td =================================================================== --- llvm/trunk/lib/Target/PowerPC/PPCInstrVSX.td +++ llvm/trunk/lib/Target/PowerPC/PPCInstrVSX.td @@ -2575,7 +2575,7 @@ class Z23_VT5_R1_VB5_RMC2_EX1 opcode, bits<8> xo, bit ex, string opc, list pattern> - : Z23Form_1 { let RC = ex;