@@ -3180,8 +3180,8 @@ bool SPIRVInstructionSelector::selectFirstBitLow16(Register ResVReg,
31803180 // to an unsigned i32. As this leaves all the least significant bits unchanged
31813181 // the first set bit from the LSB side doesn't change.
31823182 Register ExtReg = MRI->createVirtualRegister (GR.getRegClass (ResType));
3183- bool Result = selectNAryOpWithSrcs (ExtReg, ResType, I, {I. getOperand ( 2 ). getReg ()},
3184- SPIRV::OpUConvert);
3183+ bool Result = selectNAryOpWithSrcs (
3184+ ExtReg, ResType, I, {I. getOperand ( 2 ). getReg ()}, SPIRV::OpUConvert);
31853185 return Result && selectFirstBitLow32 (ResVReg, ResType, I, ExtReg);
31863186}
31873187
@@ -3209,7 +3209,8 @@ bool SPIRVInstructionSelector::selectFirstBitLow64(Register ResVReg,
32093209 MachineIRBuilder MIRBuilder (I);
32103210 SPIRVType *PostCastType =
32113211 GR.getOrCreateSPIRVVectorType (BaseType, 2 * ComponentCount, MIRBuilder);
3212- Register BitcastReg = MRI->createVirtualRegister (GR.getRegClass (PostCastType));
3212+ Register BitcastReg =
3213+ MRI->createVirtualRegister (GR.getRegClass (PostCastType));
32133214 bool Result =
32143215 selectUnOpWithSrc (BitcastReg, PostCastType, I, OpReg, SPIRV::OpBitcast);
32153216
@@ -3225,14 +3226,18 @@ bool SPIRVInstructionSelector::selectFirstBitLow64(Register ResVReg,
32253226 bool IsScalarRes = ResType->getOpcode () != SPIRV::OpTypeVector;
32263227 if (IsScalarRes) {
32273228 // if scalar do a vector extract
3228- Result = Result && selectNAryOpWithSrcs (
3229- HighReg, ResType, I,
3230- {FBLReg, GR.getOrCreateConstInt (0 , I, ResType, TII, ZeroAsNull)},
3231- SPIRV::OpVectorExtractDynamic);
3232- Result = Result && selectNAryOpWithSrcs (
3233- LowReg, ResType, I,
3234- {FBLReg, GR.getOrCreateConstInt (1 , I, ResType, TII, ZeroAsNull)},
3235- SPIRV::OpVectorExtractDynamic);
3229+ Result =
3230+ Result &&
3231+ selectNAryOpWithSrcs (
3232+ HighReg, ResType, I,
3233+ {FBLReg, GR.getOrCreateConstInt (0 , I, ResType, TII, ZeroAsNull)},
3234+ SPIRV::OpVectorExtractDynamic);
3235+ Result =
3236+ Result &&
3237+ selectNAryOpWithSrcs (
3238+ LowReg, ResType, I,
3239+ {FBLReg, GR.getOrCreateConstInt (1 , I, ResType, TII, ZeroAsNull)},
3240+ SPIRV::OpVectorExtractDynamic);
32363241 } else {
32373242 // if vector do a shufflevector
32383243 auto MIB = BuildMI (*I.getParent (), I, I.getDebugLoc (),
@@ -3280,7 +3285,8 @@ bool SPIRVInstructionSelector::selectFirstBitLow64(Register ResVReg,
32803285 SelectOp = SPIRV::OpSelectSISCond;
32813286 AddOp = SPIRV::OpIAddS;
32823287 } else {
3283- BoolType = GR.getOrCreateSPIRVVectorType (BoolType, ComponentCount, MIRBuilder);
3288+ BoolType =
3289+ GR.getOrCreateSPIRVVectorType (BoolType, ComponentCount, MIRBuilder);
32843290 NegOneReg =
32853291 GR.getOrCreateConstVector ((unsigned )-1 , I, ResType, TII, ZeroAsNull);
32863292 Reg0 = GR.getOrCreateConstVector (0 , I, ResType, TII, ZeroAsNull);
@@ -3291,18 +3297,18 @@ bool SPIRVInstructionSelector::selectFirstBitLow64(Register ResVReg,
32913297
32923298 // Check if the low bits are == -1; true if -1
32933299 Register BReg = MRI->createVirtualRegister (GR.getRegClass (BoolType));
3294- Result = Result && selectNAryOpWithSrcs (BReg, BoolType, I, {LowReg, NegOneReg},
3295- SPIRV::OpIEqual);
3300+ Result = Result && selectNAryOpWithSrcs (BReg, BoolType, I,
3301+ {LowReg, NegOneReg}, SPIRV::OpIEqual);
32963302
32973303 // Select high bits if true in BReg, otherwise low bits
32983304 Register TmpReg = MRI->createVirtualRegister (GR.getRegClass (ResType));
3299- Result = Result && selectNAryOpWithSrcs (TmpReg, ResType, I, {BReg, HighReg, LowReg},
3300- SelectOp);
3305+ Result = Result && selectNAryOpWithSrcs (TmpReg, ResType, I,
3306+ {BReg, HighReg, LowReg}, SelectOp);
33013307
33023308 // Add 32 for high bits, 0 for low bits
33033309 Register ValReg = MRI->createVirtualRegister (GR.getRegClass (ResType));
3304- Result = Result &&
3305- selectNAryOpWithSrcs (ValReg, ResType, I, {BReg, Reg32, Reg0}, SelectOp);
3310+ Result = Result && selectNAryOpWithSrcs (ValReg, ResType, I,
3311+ {BReg, Reg32, Reg0}, SelectOp);
33063312
33073313 return Result &&
33083314 selectNAryOpWithSrcs (ResVReg, ResType, I, {ValReg, TmpReg}, AddOp);
0 commit comments