@@ -10,7 +10,7 @@ target datalayout = "e-p:64:64-p1:64:64-p2:32:32-p3:32:32-p4:64:64-p5:32:32-p6:3
10
10
define i8 @memcpy_constant_arg_ptr_to_alloca (ptr addrspace (4 ) noalias readonly align 4 dereferenceable (32 ) %arg , i32 %idx ) {
11
11
; CHECK-LABEL: @memcpy_constant_arg_ptr_to_alloca(
12
12
; CHECK-NEXT: [[TMP1:%.*]] = sext i32 [[IDX:%.*]] to i64
13
- ; CHECK-NEXT: [[GEP:%.*]] = getelementptr [32 x i8], ptr addrspace(4) [[ARG:%.*]], i64 0, i64 [[TMP1]]
13
+ ; CHECK-NEXT: [[GEP:%.*]] = getelementptr inbounds [32 x i8], ptr addrspace(4) [[ARG:%.*]], i64 0, i64 [[TMP1]]
14
14
; CHECK-NEXT: [[LOAD:%.*]] = load i8, ptr addrspace(4) [[GEP]], align 1
15
15
; CHECK-NEXT: ret i8 [[LOAD]]
16
16
;
@@ -24,7 +24,7 @@ define i8 @memcpy_constant_arg_ptr_to_alloca(ptr addrspace(4) noalias readonly a
24
24
define i8 @memcpy_constant_arg_ptr_to_alloca_load_metadata (ptr addrspace (4 ) noalias readonly align 4 dereferenceable (32 ) %arg , i32 %idx ) {
25
25
; CHECK-LABEL: @memcpy_constant_arg_ptr_to_alloca_load_metadata(
26
26
; CHECK-NEXT: [[TMP1:%.*]] = sext i32 [[IDX:%.*]] to i64
27
- ; CHECK-NEXT: [[GEP:%.*]] = getelementptr [32 x i8], ptr addrspace(4) [[ARG:%.*]], i64 0, i64 [[TMP1]]
27
+ ; CHECK-NEXT: [[GEP:%.*]] = getelementptr inbounds [32 x i8], ptr addrspace(4) [[ARG:%.*]], i64 0, i64 [[TMP1]]
28
28
; CHECK-NEXT: [[LOAD:%.*]] = load i8, ptr addrspace(4) [[GEP]], align 1, !noalias [[META0:![0-9]+]]
29
29
; CHECK-NEXT: ret i8 [[LOAD]]
30
30
;
@@ -38,7 +38,7 @@ define i8 @memcpy_constant_arg_ptr_to_alloca_load_metadata(ptr addrspace(4) noal
38
38
define i64 @memcpy_constant_arg_ptr_to_alloca_load_alignment (ptr addrspace (4 ) noalias readonly align 4 dereferenceable (256 ) %arg , i32 %idx ) {
39
39
; CHECK-LABEL: @memcpy_constant_arg_ptr_to_alloca_load_alignment(
40
40
; CHECK-NEXT: [[TMP1:%.*]] = sext i32 [[IDX:%.*]] to i64
41
- ; CHECK-NEXT: [[GEP:%.*]] = getelementptr [32 x i64], ptr addrspace(4) [[ARG:%.*]], i64 0, i64 [[TMP1]]
41
+ ; CHECK-NEXT: [[GEP:%.*]] = getelementptr inbounds [32 x i64], ptr addrspace(4) [[ARG:%.*]], i64 0, i64 [[TMP1]]
42
42
; CHECK-NEXT: [[LOAD:%.*]] = load i64, ptr addrspace(4) [[GEP]], align 16
43
43
; CHECK-NEXT: ret i64 [[LOAD]]
44
44
;
@@ -68,7 +68,7 @@ define i64 @memcpy_constant_arg_ptr_to_alloca_load_atomic(ptr addrspace(4) noali
68
68
define i8 @memmove_constant_arg_ptr_to_alloca (ptr addrspace (4 ) noalias readonly align 4 dereferenceable (32 ) %arg , i32 %idx ) {
69
69
; CHECK-LABEL: @memmove_constant_arg_ptr_to_alloca(
70
70
; CHECK-NEXT: [[TMP1:%.*]] = sext i32 [[IDX:%.*]] to i64
71
- ; CHECK-NEXT: [[GEP:%.*]] = getelementptr [32 x i8], ptr addrspace(4) [[ARG:%.*]], i64 0, i64 [[TMP1]]
71
+ ; CHECK-NEXT: [[GEP:%.*]] = getelementptr inbounds [32 x i8], ptr addrspace(4) [[ARG:%.*]], i64 0, i64 [[TMP1]]
72
72
; CHECK-NEXT: [[LOAD:%.*]] = load i8, ptr addrspace(4) [[GEP]], align 1
73
73
; CHECK-NEXT: ret i8 [[LOAD]]
74
74
;
@@ -83,7 +83,7 @@ define i8 @memmove_constant_arg_ptr_to_alloca(ptr addrspace(4) noalias readonly
83
83
define amdgpu_kernel void @memcpy_constant_byref_arg_ptr_to_alloca (ptr addrspace (4 ) noalias readonly align 4 byref([32 x i8 ]) %arg , ptr addrspace (1 ) %out , i32 %idx ) {
84
84
; CHECK-LABEL: @memcpy_constant_byref_arg_ptr_to_alloca(
85
85
; CHECK-NEXT: [[TMP1:%.*]] = sext i32 [[IDX:%.*]] to i64
86
- ; CHECK-NEXT: [[GEP:%.*]] = getelementptr [32 x i8], ptr addrspace(4) [[ARG:%.*]], i64 0, i64 [[TMP1]]
86
+ ; CHECK-NEXT: [[GEP:%.*]] = getelementptr inbounds [32 x i8], ptr addrspace(4) [[ARG:%.*]], i64 0, i64 [[TMP1]]
87
87
; CHECK-NEXT: [[LOAD:%.*]] = load i8, ptr addrspace(4) [[GEP]], align 1
88
88
; CHECK-NEXT: store i8 [[LOAD]], ptr addrspace(1) [[OUT:%.*]], align 1
89
89
; CHECK-NEXT: ret void
@@ -138,7 +138,7 @@ define amdgpu_kernel void @memcpy_constant_intrinsic_ptr_to_alloca(ptr addrspace
138
138
define i8 @memcpy_constant_arg_ptr_to_alloca_addrspacecast_to_flat (ptr addrspace (4 ) noalias readonly align 4 dereferenceable (32 ) %arg , i32 %idx ) {
139
139
; CHECK-LABEL: @memcpy_constant_arg_ptr_to_alloca_addrspacecast_to_flat(
140
140
; CHECK-NEXT: [[TMP1:%.*]] = sext i32 [[IDX:%.*]] to i64
141
- ; CHECK-NEXT: [[GEP:%.*]] = getelementptr [32 x i8], ptr addrspace(4) [[ARG:%.*]], i64 0, i64 [[TMP1]]
141
+ ; CHECK-NEXT: [[GEP:%.*]] = getelementptr inbounds [32 x i8], ptr addrspace(4) [[ARG:%.*]], i64 0, i64 [[TMP1]]
142
142
; CHECK-NEXT: [[LOAD:%.*]] = load i8, ptr addrspace(4) [[GEP]], align 1
143
143
; CHECK-NEXT: ret i8 [[LOAD]]
144
144
;
0 commit comments