@@ -3084,10 +3084,9 @@ extern "C" __device__ long int test_lround(double x) {
3084
3084
// AMDGCNSPIRV-LABEL: @test_modff(
3085
3085
// AMDGCNSPIRV-NEXT: entry:
3086
3086
// AMDGCNSPIRV-NEXT: [[__TMP_I:%.*]] = alloca float, align 4
3087
- // AMDGCNSPIRV-NEXT: [[__TMP_ASCAST_I:%.*]] = addrspacecast ptr [[__TMP_I]] to ptr addrspace(4)
3088
3087
// AMDGCNSPIRV-NEXT: call addrspace(4) void @llvm.lifetime.start.p0(i64 4, ptr nonnull [[__TMP_I]]) #[[ATTR15:[0-9]+]]
3089
3088
// AMDGCNSPIRV-NEXT: [[CALL_I:%.*]] = call contract spir_func noundef addrspace(4) float @__ocml_modf_f32(float noundef [[X:%.*]], ptr noundef nonnull [[__TMP_I]]) #[[ATTR14]]
3090
- // AMDGCNSPIRV-NEXT: [[TMP0:%.*]] = load float, ptr addrspace(4) [[__TMP_ASCAST_I ]], align 4, !tbaa [[TBAA17:![0-9]+]]
3089
+ // AMDGCNSPIRV-NEXT: [[TMP0:%.*]] = load float, ptr [[__TMP_I ]], align 4, !tbaa [[TBAA17:![0-9]+]]
3091
3090
// AMDGCNSPIRV-NEXT: store float [[TMP0]], ptr addrspace(4) [[Y:%.*]], align 4, !tbaa [[TBAA17]]
3092
3091
// AMDGCNSPIRV-NEXT: call addrspace(4) void @llvm.lifetime.end.p0(i64 4, ptr nonnull [[__TMP_I]]) #[[ATTR15]]
3093
3092
// AMDGCNSPIRV-NEXT: ret float [[CALL_I]]
@@ -3129,10 +3128,9 @@ extern "C" __device__ float test_modff(float x, float* y) {
3129
3128
// AMDGCNSPIRV-LABEL: @test_modf(
3130
3129
// AMDGCNSPIRV-NEXT: entry:
3131
3130
// AMDGCNSPIRV-NEXT: [[__TMP_I:%.*]] = alloca double, align 8
3132
- // AMDGCNSPIRV-NEXT: [[__TMP_ASCAST_I:%.*]] = addrspacecast ptr [[__TMP_I]] to ptr addrspace(4)
3133
3131
// AMDGCNSPIRV-NEXT: call addrspace(4) void @llvm.lifetime.start.p0(i64 8, ptr nonnull [[__TMP_I]]) #[[ATTR15]]
3134
3132
// AMDGCNSPIRV-NEXT: [[CALL_I:%.*]] = call contract spir_func noundef addrspace(4) double @__ocml_modf_f64(double noundef [[X:%.*]], ptr noundef nonnull [[__TMP_I]]) #[[ATTR14]]
3135
- // AMDGCNSPIRV-NEXT: [[TMP0:%.*]] = load double, ptr addrspace(4) [[__TMP_ASCAST_I ]], align 8, !tbaa [[TBAA19:![0-9]+]]
3133
+ // AMDGCNSPIRV-NEXT: [[TMP0:%.*]] = load double, ptr [[__TMP_I ]], align 8, !tbaa [[TBAA19:![0-9]+]]
3136
3134
// AMDGCNSPIRV-NEXT: store double [[TMP0]], ptr addrspace(4) [[Y:%.*]], align 8, !tbaa [[TBAA19]]
3137
3135
// AMDGCNSPIRV-NEXT: call addrspace(4) void @llvm.lifetime.end.p0(i64 8, ptr nonnull [[__TMP_I]]) #[[ATTR15]]
3138
3136
// AMDGCNSPIRV-NEXT: ret double [[CALL_I]]
@@ -4469,10 +4467,9 @@ extern "C" __device__ double test_remainder(double x, double y) {
4469
4467
// AMDGCNSPIRV-LABEL: @test_remquof(
4470
4468
// AMDGCNSPIRV-NEXT: entry:
4471
4469
// AMDGCNSPIRV-NEXT: [[__TMP_I:%.*]] = alloca i32, align 4
4472
- // AMDGCNSPIRV-NEXT: [[__TMP_ASCAST_I:%.*]] = addrspacecast ptr [[__TMP_I]] to ptr addrspace(4)
4473
4470
// AMDGCNSPIRV-NEXT: call addrspace(4) void @llvm.lifetime.start.p0(i64 4, ptr nonnull [[__TMP_I]]) #[[ATTR15]]
4474
4471
// AMDGCNSPIRV-NEXT: [[CALL_I:%.*]] = call contract spir_func noundef addrspace(4) float @__ocml_remquo_f32(float noundef [[X:%.*]], float noundef [[Y:%.*]], ptr noundef nonnull [[__TMP_I]]) #[[ATTR14]]
4475
- // AMDGCNSPIRV-NEXT: [[TMP0:%.*]] = load i32, ptr addrspace(4) [[__TMP_ASCAST_I ]], align 4, !tbaa [[TBAA13]]
4472
+ // AMDGCNSPIRV-NEXT: [[TMP0:%.*]] = load i32, ptr [[__TMP_I ]], align 4, !tbaa [[TBAA13]]
4476
4473
// AMDGCNSPIRV-NEXT: store i32 [[TMP0]], ptr addrspace(4) [[Z:%.*]], align 4, !tbaa [[TBAA13]]
4477
4474
// AMDGCNSPIRV-NEXT: call addrspace(4) void @llvm.lifetime.end.p0(i64 4, ptr nonnull [[__TMP_I]]) #[[ATTR15]]
4478
4475
// AMDGCNSPIRV-NEXT: ret float [[CALL_I]]
@@ -4514,10 +4511,9 @@ extern "C" __device__ float test_remquof(float x, float y, int* z) {
4514
4511
// AMDGCNSPIRV-LABEL: @test_remquo(
4515
4512
// AMDGCNSPIRV-NEXT: entry:
4516
4513
// AMDGCNSPIRV-NEXT: [[__TMP_I:%.*]] = alloca i32, align 4
4517
- // AMDGCNSPIRV-NEXT: [[__TMP_ASCAST_I:%.*]] = addrspacecast ptr [[__TMP_I]] to ptr addrspace(4)
4518
4514
// AMDGCNSPIRV-NEXT: call addrspace(4) void @llvm.lifetime.start.p0(i64 4, ptr nonnull [[__TMP_I]]) #[[ATTR15]]
4519
4515
// AMDGCNSPIRV-NEXT: [[CALL_I:%.*]] = call contract spir_func noundef addrspace(4) double @__ocml_remquo_f64(double noundef [[X:%.*]], double noundef [[Y:%.*]], ptr noundef nonnull [[__TMP_I]]) #[[ATTR14]]
4520
- // AMDGCNSPIRV-NEXT: [[TMP0:%.*]] = load i32, ptr addrspace(4) [[__TMP_ASCAST_I ]], align 4, !tbaa [[TBAA13]]
4516
+ // AMDGCNSPIRV-NEXT: [[TMP0:%.*]] = load i32, ptr [[__TMP_I ]], align 4, !tbaa [[TBAA13]]
4521
4517
// AMDGCNSPIRV-NEXT: store i32 [[TMP0]], ptr addrspace(4) [[Z:%.*]], align 4, !tbaa [[TBAA13]]
4522
4518
// AMDGCNSPIRV-NEXT: call addrspace(4) void @llvm.lifetime.end.p0(i64 4, ptr nonnull [[__TMP_I]]) #[[ATTR15]]
4523
4519
// AMDGCNSPIRV-NEXT: ret double [[CALL_I]]
@@ -5164,11 +5160,10 @@ extern "C" __device__ BOOL_TYPE test___signbit(double x) {
5164
5160
// AMDGCNSPIRV-LABEL: @test_sincosf(
5165
5161
// AMDGCNSPIRV-NEXT: entry:
5166
5162
// AMDGCNSPIRV-NEXT: [[__TMP_I:%.*]] = alloca float, align 4
5167
- // AMDGCNSPIRV-NEXT: [[__TMP_ASCAST_I:%.*]] = addrspacecast ptr [[__TMP_I]] to ptr addrspace(4)
5168
5163
// AMDGCNSPIRV-NEXT: call addrspace(4) void @llvm.lifetime.start.p0(i64 4, ptr nonnull [[__TMP_I]]) #[[ATTR15]]
5169
5164
// AMDGCNSPIRV-NEXT: [[CALL_I:%.*]] = call contract spir_func addrspace(4) float @__ocml_sincos_f32(float noundef [[X:%.*]], ptr noundef nonnull [[__TMP_I]]) #[[ATTR14]]
5170
5165
// AMDGCNSPIRV-NEXT: store float [[CALL_I]], ptr addrspace(4) [[Y:%.*]], align 4, !tbaa [[TBAA17]]
5171
- // AMDGCNSPIRV-NEXT: [[TMP0:%.*]] = load float, ptr addrspace(4) [[__TMP_ASCAST_I ]], align 4, !tbaa [[TBAA17]]
5166
+ // AMDGCNSPIRV-NEXT: [[TMP0:%.*]] = load float, ptr [[__TMP_I ]], align 4, !tbaa [[TBAA17]]
5172
5167
// AMDGCNSPIRV-NEXT: store float [[TMP0]], ptr addrspace(4) [[Z:%.*]], align 4, !tbaa [[TBAA17]]
5173
5168
// AMDGCNSPIRV-NEXT: call addrspace(4) void @llvm.lifetime.end.p0(i64 4, ptr nonnull [[__TMP_I]]) #[[ATTR15]]
5174
5169
// AMDGCNSPIRV-NEXT: ret void
@@ -5213,11 +5208,10 @@ extern "C" __device__ void test_sincosf(float x, float *y, float *z) {
5213
5208
// AMDGCNSPIRV-LABEL: @test_sincos(
5214
5209
// AMDGCNSPIRV-NEXT: entry:
5215
5210
// AMDGCNSPIRV-NEXT: [[__TMP_I:%.*]] = alloca double, align 8
5216
- // AMDGCNSPIRV-NEXT: [[__TMP_ASCAST_I:%.*]] = addrspacecast ptr [[__TMP_I]] to ptr addrspace(4)
5217
5211
// AMDGCNSPIRV-NEXT: call addrspace(4) void @llvm.lifetime.start.p0(i64 8, ptr nonnull [[__TMP_I]]) #[[ATTR15]]
5218
5212
// AMDGCNSPIRV-NEXT: [[CALL_I:%.*]] = call contract spir_func addrspace(4) double @__ocml_sincos_f64(double noundef [[X:%.*]], ptr noundef nonnull [[__TMP_I]]) #[[ATTR14]]
5219
5213
// AMDGCNSPIRV-NEXT: store double [[CALL_I]], ptr addrspace(4) [[Y:%.*]], align 8, !tbaa [[TBAA19]]
5220
- // AMDGCNSPIRV-NEXT: [[TMP0:%.*]] = load double, ptr addrspace(4) [[__TMP_ASCAST_I ]], align 8, !tbaa [[TBAA19]]
5214
+ // AMDGCNSPIRV-NEXT: [[TMP0:%.*]] = load double, ptr [[__TMP_I ]], align 8, !tbaa [[TBAA19]]
5221
5215
// AMDGCNSPIRV-NEXT: store double [[TMP0]], ptr addrspace(4) [[Z:%.*]], align 8, !tbaa [[TBAA19]]
5222
5216
// AMDGCNSPIRV-NEXT: call addrspace(4) void @llvm.lifetime.end.p0(i64 8, ptr nonnull [[__TMP_I]]) #[[ATTR15]]
5223
5217
// AMDGCNSPIRV-NEXT: ret void
@@ -5262,11 +5256,10 @@ extern "C" __device__ void test_sincos(double x, double *y, double *z) {
5262
5256
// AMDGCNSPIRV-LABEL: @test_sincospif(
5263
5257
// AMDGCNSPIRV-NEXT: entry:
5264
5258
// AMDGCNSPIRV-NEXT: [[__TMP_I:%.*]] = alloca float, align 4
5265
- // AMDGCNSPIRV-NEXT: [[__TMP_ASCAST_I:%.*]] = addrspacecast ptr [[__TMP_I]] to ptr addrspace(4)
5266
5259
// AMDGCNSPIRV-NEXT: call addrspace(4) void @llvm.lifetime.start.p0(i64 4, ptr nonnull [[__TMP_I]]) #[[ATTR15]]
5267
5260
// AMDGCNSPIRV-NEXT: [[CALL_I:%.*]] = call contract spir_func addrspace(4) float @__ocml_sincospi_f32(float noundef [[X:%.*]], ptr noundef nonnull [[__TMP_I]]) #[[ATTR14]]
5268
5261
// AMDGCNSPIRV-NEXT: store float [[CALL_I]], ptr addrspace(4) [[Y:%.*]], align 4, !tbaa [[TBAA17]]
5269
- // AMDGCNSPIRV-NEXT: [[TMP0:%.*]] = load float, ptr addrspace(4) [[__TMP_ASCAST_I ]], align 4, !tbaa [[TBAA17]]
5262
+ // AMDGCNSPIRV-NEXT: [[TMP0:%.*]] = load float, ptr [[__TMP_I ]], align 4, !tbaa [[TBAA17]]
5270
5263
// AMDGCNSPIRV-NEXT: store float [[TMP0]], ptr addrspace(4) [[Z:%.*]], align 4, !tbaa [[TBAA17]]
5271
5264
// AMDGCNSPIRV-NEXT: call addrspace(4) void @llvm.lifetime.end.p0(i64 4, ptr nonnull [[__TMP_I]]) #[[ATTR15]]
5272
5265
// AMDGCNSPIRV-NEXT: ret void
@@ -5311,11 +5304,10 @@ extern "C" __device__ void test_sincospif(float x, float *y, float *z) {
5311
5304
// AMDGCNSPIRV-LABEL: @test_sincospi(
5312
5305
// AMDGCNSPIRV-NEXT: entry:
5313
5306
// AMDGCNSPIRV-NEXT: [[__TMP_I:%.*]] = alloca double, align 8
5314
- // AMDGCNSPIRV-NEXT: [[__TMP_ASCAST_I:%.*]] = addrspacecast ptr [[__TMP_I]] to ptr addrspace(4)
5315
5307
// AMDGCNSPIRV-NEXT: call addrspace(4) void @llvm.lifetime.start.p0(i64 8, ptr nonnull [[__TMP_I]]) #[[ATTR15]]
5316
5308
// AMDGCNSPIRV-NEXT: [[CALL_I:%.*]] = call contract spir_func addrspace(4) double @__ocml_sincospi_f64(double noundef [[X:%.*]], ptr noundef nonnull [[__TMP_I]]) #[[ATTR14]]
5317
5309
// AMDGCNSPIRV-NEXT: store double [[CALL_I]], ptr addrspace(4) [[Y:%.*]], align 8, !tbaa [[TBAA19]]
5318
- // AMDGCNSPIRV-NEXT: [[TMP0:%.*]] = load double, ptr addrspace(4) [[__TMP_ASCAST_I ]], align 8, !tbaa [[TBAA19]]
5310
+ // AMDGCNSPIRV-NEXT: [[TMP0:%.*]] = load double, ptr [[__TMP_I ]], align 8, !tbaa [[TBAA19]]
5319
5311
// AMDGCNSPIRV-NEXT: store double [[TMP0]], ptr addrspace(4) [[Z:%.*]], align 8, !tbaa [[TBAA19]]
5320
5312
// AMDGCNSPIRV-NEXT: call addrspace(4) void @llvm.lifetime.end.p0(i64 8, ptr nonnull [[__TMP_I]]) #[[ATTR15]]
5321
5313
// AMDGCNSPIRV-NEXT: ret void
0 commit comments