/// <summary> /// Updates index and length registers. /// </summary> public Register HandleIntrinsicParameter( int parameterOffset, Parameter parameter) { IndexRegister = Parent.Allocate(parameter); if (!EntryPoint.IsExplicitlyGrouped) { // This is an implicitly grouped kernel that needs // boundary information to avoid out-of-bounds dispatches LengthRegister = Parent.AllocateType(parameter.ParameterType); parameter.AssertNotNull(LengthRegister); } return(LengthRegister); }