@@ -435,8 +435,7 @@ declare void @llvm.memset.p0i8.i64(i8* nocapture, i8, i64, i1) nounwind
435
435
; strncpy -> memset, full overwrite
436
436
define void @dse_strncpy_test1 (i8* noalias %out , i8* noalias %in ) {
437
437
; CHECK-LABEL: @dse_strncpy_test1(
438
- ; CHECK-NEXT: [[CALL:%.*]] = tail call i8* @strncpy(i8* [[OUT:%.*]], i8* [[IN:%.*]], i64 100)
439
- ; CHECK-NEXT: tail call void @llvm.memset.p0i8.i64(i8* [[OUT]], i8 42, i64 100, i1 false)
438
+ ; CHECK-NEXT: tail call void @llvm.memset.p0i8.i64(i8* [[OUT:%.*]], i8 42, i64 100, i1 false)
440
439
; CHECK-NEXT: ret void
441
440
;
442
441
%call = tail call i8* @strncpy (i8* %out , i8* %in , i64 100 )
@@ -472,8 +471,7 @@ define void @dse_strncpy_test3(i8* noalias %out1, i8* noalias %out2, i8* noalias
472
471
; memset -> strncpy, full overwrite
473
472
define void @dse_strncpy_test4 (i8* noalias %out , i8* noalias %in ) {
474
473
; CHECK-LABEL: @dse_strncpy_test4(
475
- ; CHECK-NEXT: tail call void @llvm.memset.p0i8.i64(i8* [[OUT:%.*]], i8 42, i64 100, i1 false)
476
- ; CHECK-NEXT: [[CALL:%.*]] = tail call i8* @strncpy(i8* [[OUT]], i8* [[IN:%.*]], i64 100)
474
+ ; CHECK-NEXT: [[CALL:%.*]] = tail call i8* @strncpy(i8* [[OUT:%.*]], i8* [[IN:%.*]], i64 100)
477
475
; CHECK-NEXT: ret void
478
476
;
479
477
tail call void @llvm.memset.p0i8.i64 (i8* %out , i8 42 , i64 100 , i1 false )
@@ -484,7 +482,8 @@ define void @dse_strncpy_test4(i8* noalias %out, i8* noalias %in) {
484
482
; memset -> strncpy, partial overwrite
485
483
define void @dse_strncpy_test5 (i8* noalias %out , i8* noalias %in ) {
486
484
; CHECK-LABEL: @dse_strncpy_test5(
487
- ; CHECK-NEXT: tail call void @llvm.memset.p0i8.i64(i8* [[OUT:%.*]], i8 42, i64 100, i1 false)
485
+ ; CHECK-NEXT: [[TMP1:%.*]] = getelementptr inbounds i8, i8* [[OUT:%.*]], i64 99
486
+ ; CHECK-NEXT: tail call void @llvm.memset.p0i8.i64(i8* align 1 [[TMP1]], i8 42, i64 1, i1 false)
488
487
; CHECK-NEXT: [[CALL:%.*]] = tail call i8* @strncpy(i8* [[OUT]], i8* [[IN:%.*]], i64 99)
489
488
; CHECK-NEXT: ret void
490
489
;
0 commit comments