@@ -11948,31 +11948,31 @@ SDValue PPCTargetLowering::LowerDMFVectorLoad(SDValue Op,
1194811948 SDValue DmrPValue;
1194911949 if (IsV2048i1) {
1195011950 // This corresponds to v2048i1 which represents a dmr pair.
11951- SDValue Dmr1Lo(DAG.getMachineNode(PPC::DMXXINSTDMR512, dl, MVT::v512i1, Loads[4],
11952- Loads[5]), 0);
11951+ SDValue Dmr1Lo(DAG.getMachineNode(PPC::DMXXINSTDMR512, dl, MVT::v512i1,
11952+ Loads[4], Loads[5]),
11953+ 0);
1195311954 SDValue Dmr1Hi(DAG.getMachineNode(PPC::DMXXINSTDMR512_HI, dl, MVT::v512i1,
11954- Loads[6], Loads[7]), 0);
11955+ Loads[6], Loads[7]),
11956+ 0);
1195511957 const SDValue Dmr1Ops[] = {RC, Dmr1Lo, LoSub, Dmr1Hi, HiSub};
11956- SDValue Dmr1Value =
11957- SDValue(DAG.getMachineNode(PPC::REG_SEQUENCE, dl,
11958- MVT::v1024i1, Dmr1Ops), 0);
11958+ SDValue Dmr1Value = SDValue(
11959+ DAG.getMachineNode(PPC::REG_SEQUENCE, dl, MVT::v1024i1, Dmr1Ops), 0);
1195911960
1196011961 SDValue Dmr0Sub = DAG.getTargetConstant(PPC::sub_dmr0, dl, MVT::i32);
1196111962 SDValue Dmr1Sub = DAG.getTargetConstant(PPC::sub_dmr1, dl, MVT::i32);
1196211963
1196311964 SDValue DmrPRC = DAG.getTargetConstant(PPC::DMRpRCRegClassID, dl, MVT::i32);
1196411965 const SDValue DmrPOps[] = {DmrPRC, Value, Dmr0Sub, Dmr1Value, Dmr1Sub};
1196511966
11966- DmrPValue =
11967- SDValue(DAG.getMachineNode(PPC::REG_SEQUENCE, dl, MVT::v2048i1,
11968- DmrPOps), 0);
11967+ DmrPValue = SDValue(
11968+ DAG.getMachineNode(PPC::REG_SEQUENCE, dl, MVT::v2048i1, DmrPOps), 0);
1196911969 }
1197011970
1197111971 SDValue RetOps[2];
1197211972 if (IsV1024i1)
1197311973 RetOps[0] = Value;
11974- else
11975- RetOps[0] = DmrPValue;
11974+ else
11975+ RetOps[0] = DmrPValue;
1197611976 RetOps[1] = TF;
1197711977
1197811978 return DAG.getMergeValues(RetOps, dl);
@@ -12041,76 +12041,79 @@ SDValue PPCTargetLowering::LowerDMFVectorStore(SDValue Op,
1204112041
1204212042 // The types v1024i1 and v2048i1 are used for Dense Math dmr registers and
1204312043 // Dense Math dmr pair registers, respectively.
12044- assert((IsV1024i1 || IsV2048i1)&& "Unsupported type.");
12044+ assert((IsV1024i1 || IsV2048i1) && "Unsupported type.");
1204512045 assert((Subtarget.hasMMA() && Subtarget.isISAFuture()) &&
1204612046 "Dense Math support required.");
1204712047 assert(Subtarget.pairedVectorMemops() && "Vector pair support required.");
1204812048
1204912049 EVT ReturnTypes[] = {MVT::v256i1, MVT::v256i1};
1205012050 if (IsV1024i1) {
12051- SDValue Lo(
12052- DAG.getMachineNode( TargetOpcode::EXTRACT_SUBREG, dl, MVT::v512i1,
12053- Op.getOperand(1),
12054- DAG.getTargetConstant(PPC::sub_wacc_lo, dl, MVT::i32)),
12055- 0);
12056- SDValue Hi(
12057- DAG.getMachineNode( TargetOpcode::EXTRACT_SUBREG, dl, MVT::v512i1,
12058- Op.getOperand(1),
12059- DAG.getTargetConstant(PPC::sub_wacc_hi, dl, MVT::i32)),
12060- 0);
12051+ SDValue Lo(DAG.getMachineNode(
12052+ TargetOpcode::EXTRACT_SUBREG, dl, MVT::v512i1,
12053+ Op.getOperand(1),
12054+ DAG.getTargetConstant(PPC::sub_wacc_lo, dl, MVT::i32)),
12055+ 0);
12056+ SDValue Hi(DAG.getMachineNode(
12057+ TargetOpcode::EXTRACT_SUBREG, dl, MVT::v512i1,
12058+ Op.getOperand(1),
12059+ DAG.getTargetConstant(PPC::sub_wacc_hi, dl, MVT::i32)),
12060+ 0);
1206112061 MachineSDNode *ExtNode =
1206212062 DAG.getMachineNode(PPC::DMXXEXTFDMR512, dl, ReturnTypes, Lo);
1206312063 Values.push_back(SDValue(ExtNode, 0));
1206412064 Values.push_back(SDValue(ExtNode, 1));
1206512065 ExtNode = DAG.getMachineNode(PPC::DMXXEXTFDMR512_HI, dl, ReturnTypes, Hi);
1206612066 Values.push_back(SDValue(ExtNode, 0));
1206712067 Values.push_back(SDValue(ExtNode, 1));
12068- }
12069- else {
12068+ } else {
1207012069 // This corresponds to v2048i1 which represents a dmr pair.
1207112070 SDValue Dmr0(
12072- DAG.getMachineNode(TargetOpcode::EXTRACT_SUBREG, dl, MVT::v1024i1,
12073- Op.getOperand(1),
12074- DAG.getTargetConstant(PPC::sub_dmr0, dl, MVT::i32)), 0);
12071+ DAG.getMachineNode(TargetOpcode::EXTRACT_SUBREG, dl, MVT::v1024i1,
12072+ Op.getOperand(1),
12073+ DAG.getTargetConstant(PPC::sub_dmr0, dl, MVT::i32)),
12074+ 0);
1207512075
1207612076 SDValue Dmr1(
12077- DAG.getMachineNode(TargetOpcode::EXTRACT_SUBREG, dl, MVT::v1024i1,
12078- Op.getOperand(1),
12079- DAG.getTargetConstant(PPC::sub_dmr1, dl, MVT::i32)), 0);
12080-
12081- SDValue Dmr0Lo(
12082- DAG.getMachineNode(TargetOpcode::EXTRACT_SUBREG, dl, MVT::v512i1,
12083- Dmr0,
12084- DAG.getTargetConstant(PPC::sub_wacc_lo, dl, MVT::i32)), 0);
12085-
12086- SDValue Dmr0Hi(
12087- DAG.getMachineNode(TargetOpcode::EXTRACT_SUBREG, dl, MVT::v512i1,
12088- Dmr0,
12089- DAG.getTargetConstant(PPC::sub_wacc_hi, dl, MVT::i32)), 0);
12090-
12091- SDValue Dmr1Lo(
12092- DAG.getMachineNode(TargetOpcode::EXTRACT_SUBREG, dl, MVT::v512i1,
12093- Dmr1,
12094- DAG.getTargetConstant(PPC::sub_wacc_lo, dl, MVT::i32)), 0);
12095-
12096- SDValue Dmr1Hi(
12097- DAG.getMachineNode(TargetOpcode::EXTRACT_SUBREG, dl, MVT::v512i1,
12098- Dmr1,
12099- DAG.getTargetConstant(PPC::sub_wacc_hi, dl, MVT::i32)), 0);
12100-
12101- MachineSDNode *ExtNode =
12102- DAG.getMachineNode(PPC::DMXXEXTFDMR512, dl, ReturnTypes, Dmr0Lo);
12103- Values.push_back(SDValue(ExtNode, 0));
12104- Values.push_back(SDValue(ExtNode, 1));
12105- ExtNode = DAG.getMachineNode(PPC::DMXXEXTFDMR512_HI, dl, ReturnTypes, Dmr0Hi);
12106- Values.push_back(SDValue(ExtNode, 0));
12107- Values.push_back(SDValue(ExtNode, 1));
12108- ExtNode = DAG.getMachineNode(PPC::DMXXEXTFDMR512, dl, ReturnTypes, Dmr1Lo);
12109- Values.push_back(SDValue(ExtNode, 0));
12110- Values.push_back(SDValue(ExtNode, 1));
12111- ExtNode = DAG.getMachineNode(PPC::DMXXEXTFDMR512_HI, dl, ReturnTypes, Dmr1Hi);
12112- Values.push_back(SDValue(ExtNode, 0));
12113- Values.push_back(SDValue(ExtNode, 1));
12077+ DAG.getMachineNode(TargetOpcode::EXTRACT_SUBREG, dl, MVT::v1024i1,
12078+ Op.getOperand(1),
12079+ DAG.getTargetConstant(PPC::sub_dmr1, dl, MVT::i32)),
12080+ 0);
12081+
12082+ SDValue Dmr0Lo(DAG.getMachineNode(
12083+ TargetOpcode::EXTRACT_SUBREG, dl, MVT::v512i1, Dmr0,
12084+ DAG.getTargetConstant(PPC::sub_wacc_lo, dl, MVT::i32)),
12085+ 0);
12086+
12087+ SDValue Dmr0Hi(DAG.getMachineNode(
12088+ TargetOpcode::EXTRACT_SUBREG, dl, MVT::v512i1, Dmr0,
12089+ DAG.getTargetConstant(PPC::sub_wacc_hi, dl, MVT::i32)),
12090+ 0);
12091+
12092+ SDValue Dmr1Lo(DAG.getMachineNode(
12093+ TargetOpcode::EXTRACT_SUBREG, dl, MVT::v512i1, Dmr1,
12094+ DAG.getTargetConstant(PPC::sub_wacc_lo, dl, MVT::i32)),
12095+ 0);
12096+
12097+ SDValue Dmr1Hi(DAG.getMachineNode(
12098+ TargetOpcode::EXTRACT_SUBREG, dl, MVT::v512i1, Dmr1,
12099+ DAG.getTargetConstant(PPC::sub_wacc_hi, dl, MVT::i32)),
12100+ 0);
12101+
12102+ MachineSDNode *ExtNode =
12103+ DAG.getMachineNode(PPC::DMXXEXTFDMR512, dl, ReturnTypes, Dmr0Lo);
12104+ Values.push_back(SDValue(ExtNode, 0));
12105+ Values.push_back(SDValue(ExtNode, 1));
12106+ ExtNode =
12107+ DAG.getMachineNode(PPC::DMXXEXTFDMR512_HI, dl, ReturnTypes, Dmr0Hi);
12108+ Values.push_back(SDValue(ExtNode, 0));
12109+ Values.push_back(SDValue(ExtNode, 1));
12110+ ExtNode = DAG.getMachineNode(PPC::DMXXEXTFDMR512, dl, ReturnTypes, Dmr1Lo);
12111+ Values.push_back(SDValue(ExtNode, 0));
12112+ Values.push_back(SDValue(ExtNode, 1));
12113+ ExtNode =
12114+ DAG.getMachineNode(PPC::DMXXEXTFDMR512_HI, dl, ReturnTypes, Dmr1Hi);
12115+ Values.push_back(SDValue(ExtNode, 0));
12116+ Values.push_back(SDValue(ExtNode, 1));
1211412117 }
1211512118
1211612119 if (Subtarget.isLittleEndian())
0 commit comments