@@ -8456,6 +8456,46 @@ G4_INST *G4_InstDpas::cloneInst(const IR_Builder *b) {
84568456 getRepeatCount (), false , pred);
84578457}
84588458
8459+ G4_INST *G4_InstShfl::cloneInst (const IR_Builder *b) {
8460+ if (!b)
8461+ b = &builder;
8462+ auto nonConstBuilder = const_cast <IR_Builder *>(b);
8463+ auto prd = nonConstBuilder->duplicateOperand (getPredicate ());
8464+ auto dst = nonConstBuilder->duplicateOperand (getDst ());
8465+ auto src0 = nonConstBuilder->duplicateOperand (getSrc (0 ));
8466+ auto src1 = nonConstBuilder->duplicateOperand (getSrc (1 ));
8467+ return nonConstBuilder->createShflInst (prd, getSaturate (), getExecSize (),
8468+ dst, src0, src1, getShflFCtrl (),
8469+ option, false );
8470+ }
8471+
8472+ G4_INST *G4_InstDnscl::cloneInst (const IR_Builder *b) {
8473+ if (!b)
8474+ b = &builder;
8475+ auto nonConstBuilder = const_cast <IR_Builder *>(b);
8476+ auto prd = nonConstBuilder->duplicateOperand (getPredicate ());
8477+ auto dst = nonConstBuilder->duplicateOperand (getDst ());
8478+ auto src0 = nonConstBuilder->duplicateOperand (getSrc (0 ));
8479+ auto src1 = nonConstBuilder->duplicateOperand (getSrc (1 ));
8480+ auto src2 = nonConstBuilder->duplicateOperand (getSrc (2 ));
8481+ return nonConstBuilder->createDnsclInst (prd, getExecSize (), dst, src0, src1,
8482+ src2, getDnsclConvertType (),
8483+ getDnsclMode (), getDnsclRoundMode (),
8484+ option, false );
8485+ }
8486+
8487+ G4_INST *G4_InstLfsr::cloneInst (const IR_Builder *b) {
8488+ if (!b)
8489+ b = &builder;
8490+ auto nonConstBuilder = const_cast <IR_Builder *>(b);
8491+ auto prd = nonConstBuilder->duplicateOperand (getPredicate ());
8492+ auto dst = nonConstBuilder->duplicateOperand (getDst ());
8493+ auto src0 = nonConstBuilder->duplicateOperand (getSrc (0 ));
8494+ auto src1 = nonConstBuilder->duplicateOperand (getSrc (1 ));
8495+ return nonConstBuilder->createLfsrInst (prd, getExecSize (), dst, src0, src1,
8496+ getLfsrFCtrl (), option, false );
8497+ }
8498+
84598499bool G4_InstDpas::isInt () const {
84608500 // Check Src1 is enough.
84618501 switch (Src1Precision) {
0 commit comments