Skip to content

Commit 3c8ede9

Browse files
authored
[HLSL][clang] Move hlsl_wave_get_lane_index to EmitHLSLBuiltinExpr (#87131)
Resolves #87109
1 parent 6aa5388 commit 3c8ede9

File tree

1 file changed

+8
-10
lines changed

1 file changed

+8
-10
lines changed

clang/lib/CodeGen/CGBuiltin.cpp

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5892,16 +5892,6 @@ RValue CodeGenFunction::EmitBuiltinExpr(const GlobalDecl GD, unsigned BuiltinID,
58925892
Name),
58935893
{NDRange, Kernel, Block}));
58945894
}
5895-
5896-
case Builtin::BI__builtin_hlsl_wave_get_lane_index: {
5897-
auto *CI = EmitRuntimeCall(CGM.CreateRuntimeFunction(
5898-
llvm::FunctionType::get(IntTy, {}, false), "__hlsl_wave_get_lane_index",
5899-
{}, false, true));
5900-
if (getTarget().getTriple().isSPIRVLogical())
5901-
CI = dyn_cast<CallInst>(addControlledConvergenceToken(CI));
5902-
return RValue::get(CI);
5903-
}
5904-
59055895
case Builtin::BI__builtin_store_half:
59065896
case Builtin::BI__builtin_store_halff: {
59075897
Value *Val = EmitScalarExpr(E->getArg(0));
@@ -18317,6 +18307,14 @@ Value *CodeGenFunction::EmitHLSLBuiltinExpr(unsigned BuiltinID,
1831718307
/*ReturnType=*/Op0->getType(), Intrinsic::dx_rsqrt,
1831818308
ArrayRef<Value *>{Op0}, nullptr, "dx.rsqrt");
1831918309
}
18310+
case Builtin::BI__builtin_hlsl_wave_get_lane_index: {
18311+
auto *CI = EmitRuntimeCall(CGM.CreateRuntimeFunction(
18312+
llvm::FunctionType::get(IntTy, {}, false), "__hlsl_wave_get_lane_index",
18313+
{}, false, true));
18314+
if (getTarget().getTriple().isSPIRVLogical())
18315+
CI = dyn_cast<CallInst>(addControlledConvergenceToken(CI));
18316+
return CI;
18317+
}
1832018318
}
1832118319
return nullptr;
1832218320
}

0 commit comments

Comments
 (0)