@@ -209,7 +209,7 @@ static Value *handleAsDoubleBuiltin(CodeGenFunction &CGF, const CallExpr *E) {
209
209
if (CGF.CGM .getTarget ().getTriple ().isDXIL ())
210
210
return CGF.Builder .CreateIntrinsic (
211
211
/* ReturnType=*/ ResultType, Intrinsic::dx_asdouble,
212
- ArrayRef<Value *> {OpLowBits, OpHighBits}, nullptr , " hlsl.asdouble" );
212
+ {OpLowBits, OpHighBits}, nullptr , " hlsl.asdouble" );
213
213
214
214
if (!E->getArg (0 )->getType ()->isVectorType ()) {
215
215
OpLowBits = CGF.Builder .CreateVectorSplat (1 , OpLowBits);
@@ -240,13 +240,13 @@ static Value *handleHlslClip(const CallExpr *E, CodeGenFunction *CGF) {
240
240
auto *FCompInst = CGF->Builder .CreateFCmpOLT (Op0, FZeroConst);
241
241
CMP = CGF->Builder .CreateIntrinsic (
242
242
CGF->Builder .getInt1Ty (), CGF->CGM .getHLSLRuntime ().getAnyIntrinsic (),
243
- {FCompInst}, nullptr );
243
+ {FCompInst});
244
244
} else
245
245
CMP = CGF->Builder .CreateFCmpOLT (Op0, FZeroConst);
246
246
247
247
if (CGF->CGM .getTarget ().getTriple ().isDXIL ())
248
248
LastInstr = CGF->Builder .CreateIntrinsic (
249
- CGF->VoidTy , llvm:: Intrinsic::dx_discard, {CMP}, nullptr );
249
+ CGF->VoidTy , Intrinsic::dx_discard, {CMP});
250
250
else if (CGF->CGM .getTarget ().getTriple ().isSPIRV ()) {
251
251
BasicBlock *LT0 = CGF->createBasicBlock (" lt0" , CGF->CurFn );
252
252
BasicBlock *End = CGF->createBasicBlock (" end" , CGF->CurFn );
@@ -255,11 +255,9 @@ static Value *handleHlslClip(const CallExpr *E, CodeGenFunction *CGF) {
255
255
256
256
CGF->Builder .SetInsertPoint (LT0);
257
257
258
- CGF->Builder .CreateIntrinsic (CGF->VoidTy , llvm::Intrinsic::spv_discard, {},
259
- nullptr );
258
+ CGF->Builder .CreateIntrinsic (CGF->VoidTy , Intrinsic::spv_discard, {});
260
259
261
260
LastInstr = CGF->Builder .CreateBr (End);
262
-
263
261
CGF->Builder .SetInsertPoint (End);
264
262
} else {
265
263
llvm_unreachable (" Backend Codegen not supported." );
@@ -442,11 +440,11 @@ static Intrinsic::ID getWaveActiveSumIntrinsic(llvm::Triple::ArchType Arch,
442
440
CGHLSLRuntime &RT, QualType QT) {
443
441
switch (Arch) {
444
442
case llvm::Triple::spirv:
445
- return llvm:: Intrinsic::spv_wave_reduce_sum;
443
+ return Intrinsic::spv_wave_reduce_sum;
446
444
case llvm::Triple::dxil: {
447
445
if (QT->isUnsignedIntegerType ())
448
- return llvm:: Intrinsic::dx_wave_reduce_usum;
449
- return llvm:: Intrinsic::dx_wave_reduce_sum;
446
+ return Intrinsic::dx_wave_reduce_usum;
447
+ return Intrinsic::dx_wave_reduce_sum;
450
448
}
451
449
default :
452
450
llvm_unreachable (" Intrinsic WaveActiveSum"
@@ -460,12 +458,12 @@ static Intrinsic::ID getWaveActiveMaxIntrinsic(llvm::Triple::ArchType Arch,
460
458
switch (Arch) {
461
459
case llvm::Triple::spirv:
462
460
if (QT->isUnsignedIntegerType ())
463
- return llvm:: Intrinsic::spv_wave_reduce_umax;
464
- return llvm:: Intrinsic::spv_wave_reduce_max;
461
+ return Intrinsic::spv_wave_reduce_umax;
462
+ return Intrinsic::spv_wave_reduce_max;
465
463
case llvm::Triple::dxil: {
466
464
if (QT->isUnsignedIntegerType ())
467
- return llvm:: Intrinsic::dx_wave_reduce_umax;
468
- return llvm:: Intrinsic::dx_wave_reduce_max;
465
+ return Intrinsic::dx_wave_reduce_umax;
466
+ return Intrinsic::dx_wave_reduce_max;
469
467
}
470
468
default :
471
469
llvm_unreachable (" Intrinsic WaveActiveMax"
@@ -504,17 +502,17 @@ Value *CodeGenFunction::EmitHLSLBuiltinExpr(unsigned BuiltinID,
504
502
LowB = Builder.CreateExtractElement (OpB, (uint64_t )0 , " LowB" );
505
503
HighB = Builder.CreateExtractElement (OpB, (uint64_t )1 , " HighB" );
506
504
} else {
507
- LowA = Builder.CreateShuffleVector (OpA, ArrayRef< int > {0 , 2 }, " LowA" );
508
- HighA = Builder.CreateShuffleVector (OpA, ArrayRef< int > {1 , 3 }, " HighA" );
509
- LowB = Builder.CreateShuffleVector (OpB, ArrayRef< int > {0 , 2 }, " LowB" );
510
- HighB = Builder.CreateShuffleVector (OpB, ArrayRef< int > {1 , 3 }, " HighB" );
505
+ LowA = Builder.CreateShuffleVector (OpA, {0 , 2 }, " LowA" );
506
+ HighA = Builder.CreateShuffleVector (OpA, {1 , 3 }, " HighA" );
507
+ LowB = Builder.CreateShuffleVector (OpB, {0 , 2 }, " LowB" );
508
+ HighB = Builder.CreateShuffleVector (OpB, {1 , 3 }, " HighB" );
511
509
}
512
510
513
511
// Use an uadd_with_overflow to compute the sum of low words and obtain a
514
512
// carry value
515
513
llvm::Value *Carry;
516
514
llvm::Value *LowSum = EmitOverflowIntrinsic (
517
- *this , llvm:: Intrinsic::uadd_with_overflow, LowA, LowB, Carry);
515
+ *this , Intrinsic::uadd_with_overflow, LowA, LowB, Carry);
518
516
llvm::Value *ZExtCarry =
519
517
Builder.CreateZExt (Carry, HighA->getType (), " CarryZExt" );
520
518
@@ -525,7 +523,7 @@ Value *CodeGenFunction::EmitHLSLBuiltinExpr(unsigned BuiltinID,
525
523
526
524
if (NumElements == 4 ) {
527
525
return Builder.CreateShuffleVector (LowSum, HighSumPlusCarry,
528
- ArrayRef< int > {0 , 2 , 1 , 3 },
526
+ {0 , 2 , 1 , 3 },
529
527
" hlsl.AddUint64" );
530
528
}
531
529
@@ -1341,11 +1339,11 @@ Value *CodeGenFunction::EmitAMDGPUBuiltinExpr(unsigned BuiltinID,
1341
1339
// The builtins take these arguments as vec4 where the last element is
1342
1340
// ignored. The intrinsic takes them as vec3.
1343
1341
RayOrigin = Builder.CreateShuffleVector (RayOrigin, RayOrigin,
1344
- ArrayRef< int > {0 , 1 , 2 });
1342
+ {0 , 1 , 2 });
1345
1343
RayDir =
1346
- Builder.CreateShuffleVector (RayDir, RayDir, ArrayRef< int > {0 , 1 , 2 });
1344
+ Builder.CreateShuffleVector (RayDir, RayDir, {0 , 1 , 2 });
1347
1345
RayInverseDir = Builder.CreateShuffleVector (RayInverseDir, RayInverseDir,
1348
- ArrayRef< int > {0 , 1 , 2 });
1346
+ {0 , 1 , 2 });
1349
1347
1350
1348
Function *F = CGM.getIntrinsic (Intrinsic::amdgcn_image_bvh_intersect_ray,
1351
1349
{NodePtr->getType (), RayDir->getType ()});
0 commit comments