Skip to content

Commit 281e286

Browse files
sys-igcigcbot
authored andcommitted
[Autobackout][FunctionalRegression]Revert of change: Add SYCL bindless ImageReadLod builtins with integer coord
SYCL fetch_image applied to sampled_image is implemented with these new builtins. Sampler should be ignored. Therefore, builtins are implemented with __builtin_IB_OCL_*d_ld* since __builtin_IB_get_address_mode and __builtin_IB_is_normalized_coords are resolved to 0 for SYCL bindless image. This PR is for SYCL bindless image end2end tests: fetch_1D_USM.cpp, fetch_2D.cpp, fetch_2D_USM.cpp and fetch_3D.cpp in sampled_fetch folder.
1 parent 6cec290 commit 281e286

File tree

1 file changed

+2
-49
lines changed

1 file changed

+2
-49
lines changed

IGC/BiFModule/Implementation/images.cl

Lines changed: 2 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -403,19 +403,8 @@ float4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(ImageSampleExplicitLod, _v4f32_img1d_ro_
403403

404404
float4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(ImageSampleExplicitLod, _v4f32_img1d_ro_i32_i32_f32, _Rfloat4)(__spirv_SampledImage_1D SampledImage, int Coordinate, int ImageOperands, float Lod)
405405
{
406-
int image_id = (int)__builtin_IB_get_image(SampledImage);
407-
int sampler_id = (int)__builtin_IB_get_sampler(SampledImage);
408-
409-
if ((__builtin_IB_get_address_mode(sampler_id) & 0x07) == CLK_ADDRESS_CLAMP_TO_EDGE)
410-
{
411-
float floatCoords = convert_float((Coordinate));
412-
return __builtin_IB_OCL_1d_sample_l(image_id, sampler_id, floatCoords, Lod);
413-
}
414-
else
415-
{
416-
float float_lod = SPIRV_BUILTIN(ConvertFToS, _i32_f32, _Rint)(Lod);
417-
return __builtin_IB_OCL_1d_ld(image_id, Coordinate, float_lod);
418-
}
406+
float floatCoords = convert_float(Coordinate);
407+
return SPIRV_BUILTIN(ImageSampleExplicitLod, _v4f32_img1d_ro_f32_i32_f32, _Rfloat4)(SampledImage, floatCoords, ImageOperands, Lod);
419408
}
420409

421410
uint4 OVERLOADABLE __spirv_ImageSampleExplicitLod_Ruint4(__spirv_SampledImage_1D SampledImage, float Coordinate, int ImageOperands, float Lod)
@@ -1002,10 +991,6 @@ float4 SPIRV_OVERLOADABLE SPIRV_BUILTIN(ImageSampleExplicitLod, _v4f32_img2d_arr
1002991

1003992
#define DEF_SYCL_BINDLESS_SAMPLED_IMAGE_EXPLICIT_LOD_S_C_TY(DIM, COORD_DIM, RET_TYPE, LOAD_TYPE) \
1004993
RET_TYPE##4 OVERLOADABLE __spirv_ImageSampleExplicitLod_R##RET_TYPE##4(__spirv_SampledImage_##DIM##D Image, float##COORD_DIM Coordinate, int ImageOperands, float Lod) \
1005-
{ \
1006-
return convert_##RET_TYPE##4(__spirv_ImageSampleExplicitLod_R##LOAD_TYPE(Image, Coordinate, ImageOperands, Lod)); \
1007-
} \
1008-
RET_TYPE##4 OVERLOADABLE __spirv_ImageSampleExplicitLod_R##RET_TYPE##4(__spirv_SampledImage_##DIM##D Image, int##COORD_DIM Coordinate, int ImageOperands, float Lod) \
1009994
{ \
1010995
return convert_##RET_TYPE##4(__spirv_ImageSampleExplicitLod_R##LOAD_TYPE(Image, Coordinate, ImageOperands, Lod)); \
1011996
}
@@ -1041,63 +1026,31 @@ RET_TYPE##4 OVERLOADABLE __spirv_ImageSampleExplicitLod_R##RET_TYPE##4(__spirv_S
10411026
{ \
10421027
return __spirv_ImageSampleExplicitLod_R##RET_TYPE##4(Image, Coordinate, ImageOperands, DefaultLod); \
10431028
} \
1044-
RET_TYPE##4 OVERLOADABLE __spirv_ImageSampleExplicitLod_R##RET_TYPE##4(__spirv_SampledImage_##DIM##D Image, int##COORD_DIM Coordinate, int ImageOperands) \
1045-
{ \
1046-
return __spirv_ImageSampleExplicitLod_R##RET_TYPE##4(Image, Coordinate, ImageOperands, DefaultLod); \
1047-
} \
10481029
RET_TYPE##4 OVERLOADABLE __spirv_ImageSampleExplicitLod_R##RET_TYPE##4(__spirv_SampledImage_##DIM##D Image, float##COORD_DIM Coordinate) \
10491030
{ \
10501031
return __spirv_ImageSampleExplicitLod_R##RET_TYPE##4(Image, Coordinate, DefaultImageOperands, DefaultLod); \
10511032
} \
1052-
RET_TYPE##4 OVERLOADABLE __spirv_ImageSampleExplicitLod_R##RET_TYPE##4(__spirv_SampledImage_##DIM##D Image, int##COORD_DIM Coordinate) \
1053-
{ \
1054-
return __spirv_ImageSampleExplicitLod_R##RET_TYPE##4(Image, Coordinate, DefaultImageOperands, DefaultLod); \
1055-
} \
10561033
RET_TYPE##2 OVERLOADABLE __spirv_ImageSampleExplicitLod_R##RET_TYPE##2(__spirv_SampledImage_##DIM##D Image, float##COORD_DIM Coordinate, int ImageOperands, float Lod) \
10571034
{ \
10581035
return convert_##RET_TYPE##2(__spirv_ImageSampleExplicitLod_R##LOAD_TYPE(Image, Coordinate, ImageOperands, Lod).xy); \
10591036
} \
1060-
RET_TYPE##2 OVERLOADABLE __spirv_ImageSampleExplicitLod_R##RET_TYPE##2(__spirv_SampledImage_##DIM##D Image, int##COORD_DIM Coordinate, int ImageOperands, float Lod) \
1061-
{ \
1062-
return convert_##RET_TYPE##2(__spirv_ImageSampleExplicitLod_R##LOAD_TYPE(Image, Coordinate, ImageOperands, Lod).xy); \
1063-
} \
10641037
RET_TYPE##2 OVERLOADABLE __spirv_ImageSampleExplicitLod_R##RET_TYPE##2(__spirv_SampledImage_##DIM##D Image, float##COORD_DIM Coordinate, int ImageOperands) \
10651038
{ \
10661039
return __spirv_ImageSampleExplicitLod_R##RET_TYPE##2(Image, Coordinate, ImageOperands, DefaultLod); \
10671040
} \
1068-
RET_TYPE##2 OVERLOADABLE __spirv_ImageSampleExplicitLod_R##RET_TYPE##2(__spirv_SampledImage_##DIM##D Image, int##COORD_DIM Coordinate, int ImageOperands) \
1069-
{ \
1070-
return __spirv_ImageSampleExplicitLod_R##RET_TYPE##2(Image, Coordinate, ImageOperands, DefaultLod); \
1071-
} \
10721041
RET_TYPE##2 OVERLOADABLE __spirv_ImageSampleExplicitLod_R##RET_TYPE##2(__spirv_SampledImage_##DIM##D Image, float##COORD_DIM Coordinate) \
10731042
{ \
10741043
return __spirv_ImageSampleExplicitLod_R##RET_TYPE##2(Image, Coordinate, DefaultImageOperands, DefaultLod); \
10751044
} \
1076-
RET_TYPE##2 OVERLOADABLE __spirv_ImageSampleExplicitLod_R##RET_TYPE##2(__spirv_SampledImage_##DIM##D Image, int##COORD_DIM Coordinate) \
1077-
{ \
1078-
return __spirv_ImageSampleExplicitLod_R##RET_TYPE##2(Image, Coordinate, DefaultImageOperands, DefaultLod); \
1079-
} \
10801045
RET_TYPE OVERLOADABLE __spirv_ImageSampleExplicitLod_R##RET_TYPE(__spirv_SampledImage_##DIM##D Image, float##COORD_DIM Coordinate, int ImageOperands, float Lod) \
10811046
{ \
10821047
return convert_##RET_TYPE(__spirv_ImageSampleExplicitLod_R##LOAD_TYPE(Image, Coordinate, ImageOperands, Lod).x); \
10831048
} \
1084-
RET_TYPE OVERLOADABLE __spirv_ImageSampleExplicitLod_R##RET_TYPE(__spirv_SampledImage_##DIM##D Image, int##COORD_DIM Coordinate, int ImageOperands, float Lod) \
1085-
{ \
1086-
return convert_##RET_TYPE(__spirv_ImageSampleExplicitLod_R##LOAD_TYPE(Image, Coordinate, ImageOperands, Lod).x); \
1087-
} \
10881049
RET_TYPE OVERLOADABLE __spirv_ImageSampleExplicitLod_R##RET_TYPE(__spirv_SampledImage_##DIM##D Image, float##COORD_DIM Coordinate, int ImageOperands) \
10891050
{ \
10901051
return __spirv_ImageSampleExplicitLod_R##RET_TYPE(Image, Coordinate, ImageOperands, DefaultLod); \
10911052
} \
1092-
RET_TYPE OVERLOADABLE __spirv_ImageSampleExplicitLod_R##RET_TYPE(__spirv_SampledImage_##DIM##D Image, int##COORD_DIM Coordinate, int ImageOperands) \
1093-
{ \
1094-
return __spirv_ImageSampleExplicitLod_R##RET_TYPE(Image, Coordinate, ImageOperands, DefaultLod); \
1095-
} \
10961053
RET_TYPE OVERLOADABLE __spirv_ImageSampleExplicitLod_R##RET_TYPE(__spirv_SampledImage_##DIM##D Image, float##COORD_DIM Coordinate) \
1097-
{ \
1098-
return __spirv_ImageSampleExplicitLod_R##RET_TYPE(Image, Coordinate, DefaultImageOperands, DefaultLod); \
1099-
} \
1100-
RET_TYPE OVERLOADABLE __spirv_ImageSampleExplicitLod_R##RET_TYPE(__spirv_SampledImage_##DIM##D Image, int##COORD_DIM Coordinate) \
11011054
{ \
11021055
return __spirv_ImageSampleExplicitLod_R##RET_TYPE(Image, Coordinate, DefaultImageOperands, DefaultLod); \
11031056
}

0 commit comments

Comments
 (0)