summaryrefslogtreecommitdiffstats
path: root/llvm/test/Transforms
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/Transforms')
-rw-r--r--llvm/test/Transforms/AddDiscriminators/call.ll8
-rw-r--r--llvm/test/Transforms/AtomicExpand/SPARC/libcalls.ll44
-rw-r--r--llvm/test/Transforms/BBVectorize/X86/wr-aliases.ll8
-rw-r--r--llvm/test/Transforms/CodeGenPrepare/builtin-condition.ll20
-rw-r--r--llvm/test/Transforms/Coroutines/coro-split-dbg.ll4
-rw-r--r--llvm/test/Transforms/CorrelatedValuePropagation/alloca.ll8
-rw-r--r--llvm/test/Transforms/DeadStoreElimination/dominate.ll6
-rw-r--r--llvm/test/Transforms/DeadStoreElimination/lifetime.ll10
-rw-r--r--llvm/test/Transforms/GVN/cond_br2.ll8
-rw-r--r--llvm/test/Transforms/GVN/lifetime-simple.ll8
-rw-r--r--llvm/test/Transforms/GVNHoist/pr29034.ll4
-rw-r--r--llvm/test/Transforms/IndVarSimplify/exit_value_test2.ll8
-rw-r--r--llvm/test/Transforms/Inline/alloca-bonus.ll8
-rw-r--r--llvm/test/Transforms/Inline/crash-lifetime-marker.ll4
-rw-r--r--llvm/test/Transforms/Inline/lifetime-no-datalayout.ll4
-rw-r--r--llvm/test/Transforms/Inline/lifetime.ll40
-rw-r--r--llvm/test/Transforms/InstCombine/builtin-object-size-offset.ll12
-rw-r--r--llvm/test/Transforms/InstCombine/builtin-object-size-ptr.ll8
-rw-r--r--llvm/test/Transforms/InstCombine/compare-alloca.ll8
-rw-r--r--llvm/test/Transforms/InstCombine/deadcode.ll8
-rw-r--r--llvm/test/Transforms/InstCombine/lifetime-asan.ll12
-rw-r--r--llvm/test/Transforms/InstCombine/lifetime.ll40
-rw-r--r--llvm/test/Transforms/InstCombine/malloc-free-delete.ll8
-rw-r--r--llvm/test/Transforms/InstCombine/memcpy-from-global.ll4
-rw-r--r--llvm/test/Transforms/InstCombine/vararg.ll12
-rw-r--r--llvm/test/Transforms/LoopVectorize/lifetime.ll24
-rw-r--r--llvm/test/Transforms/Mem2Reg/ignore-lifetime.ll12
-rw-r--r--llvm/test/Transforms/MemCpyOpt/lifetime.ll8
-rw-r--r--llvm/test/Transforms/MemCpyOpt/memcpy-to-memset-with-lifetimes.ll12
-rw-r--r--llvm/test/Transforms/MemCpyOpt/memcpy-undef.ll6
-rw-r--r--llvm/test/Transforms/MemCpyOpt/pr29105.ll16
-rw-r--r--llvm/test/Transforms/NewGVN/cond_br2.ll8
-rw-r--r--llvm/test/Transforms/NewGVN/lifetime-simple.ll8
-rw-r--r--llvm/test/Transforms/SROA/basictest.ll26
-rw-r--r--llvm/test/Transforms/SROA/pr26972.ll4
-rw-r--r--llvm/test/Transforms/SROA/vector-lifetime-intrinsic.ll8
-rw-r--r--llvm/test/Transforms/SafeStack/X86/call.ll8
-rw-r--r--llvm/test/Transforms/SafeStack/X86/coloring-ssp.ll12
-rw-r--r--llvm/test/Transforms/SafeStack/X86/coloring.ll16
-rw-r--r--llvm/test/Transforms/SafeStack/X86/coloring2.ll162
-rw-r--r--llvm/test/Transforms/SafeStack/X86/debug-loc2.ll4
-rw-r--r--llvm/test/Transforms/SafeStack/X86/layout-frag.ll16
-rw-r--r--llvm/test/Transforms/SampleProfile/remarks.ll12
-rw-r--r--llvm/test/Transforms/SimplifyCFG/critedge-assume.ll4
-rw-r--r--llvm/test/Transforms/SimplifyCFG/empty-cleanuppad.ll8
-rw-r--r--llvm/test/Transforms/SimplifyCFG/lifetime.ll8
-rw-r--r--llvm/test/Transforms/Util/MemorySSA/lifetime-simple.ll12
47 files changed, 349 insertions, 349 deletions
diff --git a/llvm/test/Transforms/AddDiscriminators/call.ll b/llvm/test/Transforms/AddDiscriminators/call.ll
index 5365d68eb09..49aca5a488f 100644
--- a/llvm/test/Transforms/AddDiscriminators/call.ll
+++ b/llvm/test/Transforms/AddDiscriminators/call.ll
@@ -14,8 +14,8 @@ define void @_Z3foov() #0 !dbg !4 {
; CHECK: call void @_Z3barv(), !dbg ![[CALL0:[0-9]+]]
%a = alloca [100 x i8], align 16
%b = bitcast [100 x i8]* %a to i8*
- call void @llvm.lifetime.start(i64 100, i8* %b), !dbg !11
- call void @llvm.lifetime.end(i64 100, i8* %b), !dbg !11
+ call void @llvm.lifetime.start.p0i8(i64 100, i8* %b), !dbg !11
+ call void @llvm.lifetime.end.p0i8(i64 100, i8* %b), !dbg !11
call void @_Z3barv(), !dbg !11
; CHECK: call void @_Z3barv(), !dbg ![[CALL1:[0-9]+]]
call void @_Z3barv(), !dbg !12
@@ -24,8 +24,8 @@ define void @_Z3foov() #0 !dbg !4 {
}
declare void @_Z3barv() #1
-declare void @llvm.lifetime.start(i64, i8* nocapture) nounwind argmemonly
-declare void @llvm.lifetime.end(i64, i8* nocapture) nounwind argmemonly
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) nounwind argmemonly
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) nounwind argmemonly
attributes #0 = { uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
attributes #1 = { "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
diff --git a/llvm/test/Transforms/AtomicExpand/SPARC/libcalls.ll b/llvm/test/Transforms/AtomicExpand/SPARC/libcalls.ll
index afab7a39b27..fc6aade8708 100644
--- a/llvm/test/Transforms/AtomicExpand/SPARC/libcalls.ll
+++ b/llvm/test/Transforms/AtomicExpand/SPARC/libcalls.ll
@@ -43,11 +43,11 @@ define i16 @test_exchange_i16(i16* %arg, i16 %val) {
; CHECK: %1 = bitcast i16* %arg to i8*
; CHECK: %2 = alloca i16, align 2
; CHECK: %3 = bitcast i16* %2 to i8*
-; CHECK: call void @llvm.lifetime.start(i64 2, i8* %3)
+; CHECK: call void @llvm.lifetime.start.p0i8(i64 2, i8* %3)
; CHECK: store i16 %old, i16* %2, align 2
; CHECK: %4 = call zeroext i1 @__atomic_compare_exchange_2(i8* %1, i8* %3, i16 %new, i32 5, i32 0)
; CHECK: %5 = load i16, i16* %2, align 2
-; CHECK: call void @llvm.lifetime.end(i64 2, i8* %3)
+; CHECK: call void @llvm.lifetime.end.p0i8(i64 2, i8* %3)
; CHECK: %6 = insertvalue { i16, i1 } undef, i16 %5, 0
; CHECK: %7 = insertvalue { i16, i1 } %6, i1 %4, 1
; CHECK: %ret = extractvalue { i16, i1 } %7, 0
@@ -76,10 +76,10 @@ define i16 @test_add_i16(i16* %arg, i16 %val) {
; CHECK: %1 = bitcast i128* %arg to i8*
; CHECK: %2 = alloca i128, align 8
; CHECK: %3 = bitcast i128* %2 to i8*
-; CHECK: call void @llvm.lifetime.start(i64 16, i8* %3)
+; CHECK: call void @llvm.lifetime.start.p0i8(i64 16, i8* %3)
; CHECK: call void @__atomic_load(i32 16, i8* %1, i8* %3, i32 5)
; CHECK: %4 = load i128, i128* %2, align 8
-; CHECK: call void @llvm.lifetime.end(i64 16, i8* %3)
+; CHECK: call void @llvm.lifetime.end.p0i8(i64 16, i8* %3)
; CHECK: ret i128 %4
define i128 @test_load_i128(i128* %arg) {
%ret = load atomic i128, i128* %arg seq_cst, align 16
@@ -90,10 +90,10 @@ define i128 @test_load_i128(i128* %arg) {
; CHECK: %1 = bitcast i128* %arg to i8*
; CHECK: %2 = alloca i128, align 8
; CHECK: %3 = bitcast i128* %2 to i8*
-; CHECK: call void @llvm.lifetime.start(i64 16, i8* %3)
+; CHECK: call void @llvm.lifetime.start.p0i8(i64 16, i8* %3)
; CHECK: store i128 %val, i128* %2, align 8
; CHECK: call void @__atomic_store(i32 16, i8* %1, i8* %3, i32 5)
-; CHECK: call void @llvm.lifetime.end(i64 16, i8* %3)
+; CHECK: call void @llvm.lifetime.end.p0i8(i64 16, i8* %3)
; CHECK: ret void
define void @test_store_i128(i128* %arg, i128 %val) {
store atomic i128 %val, i128* %arg seq_cst, align 16
@@ -104,15 +104,15 @@ define void @test_store_i128(i128* %arg, i128 %val) {
; CHECK: %1 = bitcast i128* %arg to i8*
; CHECK: %2 = alloca i128, align 8
; CHECK: %3 = bitcast i128* %2 to i8*
-; CHECK: call void @llvm.lifetime.start(i64 16, i8* %3)
+; CHECK: call void @llvm.lifetime.start.p0i8(i64 16, i8* %3)
; CHECK: store i128 %val, i128* %2, align 8
; CHECK: %4 = alloca i128, align 8
; CHECK: %5 = bitcast i128* %4 to i8*
-; CHECK: call void @llvm.lifetime.start(i64 16, i8* %5)
+; CHECK: call void @llvm.lifetime.start.p0i8(i64 16, i8* %5)
; CHECK: call void @__atomic_exchange(i32 16, i8* %1, i8* %3, i8* %5, i32 5)
-; CHECK: call void @llvm.lifetime.end(i64 16, i8* %3)
+; CHECK: call void @llvm.lifetime.end.p0i8(i64 16, i8* %3)
; CHECK: %6 = load i128, i128* %4, align 8
-; CHECK: call void @llvm.lifetime.end(i64 16, i8* %5)
+; CHECK: call void @llvm.lifetime.end.p0i8(i64 16, i8* %5)
; CHECK: ret i128 %6
define i128 @test_exchange_i128(i128* %arg, i128 %val) {
%ret = atomicrmw xchg i128* %arg, i128 %val seq_cst
@@ -123,16 +123,16 @@ define i128 @test_exchange_i128(i128* %arg, i128 %val) {
; CHECK: %1 = bitcast i128* %arg to i8*
; CHECK: %2 = alloca i128, align 8
; CHECK: %3 = bitcast i128* %2 to i8*
-; CHECK: call void @llvm.lifetime.start(i64 16, i8* %3)
+; CHECK: call void @llvm.lifetime.start.p0i8(i64 16, i8* %3)
; CHECK: store i128 %old, i128* %2, align 8
; CHECK: %4 = alloca i128, align 8
; CHECK: %5 = bitcast i128* %4 to i8*
-; CHECK: call void @llvm.lifetime.start(i64 16, i8* %5)
+; CHECK: call void @llvm.lifetime.start.p0i8(i64 16, i8* %5)
; CHECK: store i128 %new, i128* %4, align 8
; CHECK: %6 = call zeroext i1 @__atomic_compare_exchange(i32 16, i8* %1, i8* %3, i8* %5, i32 5, i32 0)
-; CHECK: call void @llvm.lifetime.end(i64 16, i8* %5)
+; CHECK: call void @llvm.lifetime.end.p0i8(i64 16, i8* %5)
; CHECK: %7 = load i128, i128* %2, align 8
-; CHECK: call void @llvm.lifetime.end(i64 16, i8* %3)
+; CHECK: call void @llvm.lifetime.end.p0i8(i64 16, i8* %3)
; CHECK: %8 = insertvalue { i128, i1 } undef, i128 %7, 0
; CHECK: %9 = insertvalue { i128, i1 } %8, i1 %6, 1
; CHECK: %ret = extractvalue { i128, i1 } %9, 0
@@ -157,15 +157,15 @@ define i128 @test_cmpxchg_i128(i128* %arg, i128 %old, i128 %new) {
; CHECK: %new = add i128 %loaded, %val
; CHECK: %4 = bitcast i128* %arg to i8*
; CHECK: %5 = bitcast i128* %1 to i8*
-; CHECK: call void @llvm.lifetime.start(i64 16, i8* %5)
+; CHECK: call void @llvm.lifetime.start.p0i8(i64 16, i8* %5)
; CHECK: store i128 %loaded, i128* %1, align 8
; CHECK: %6 = bitcast i128* %2 to i8*
-; CHECK: call void @llvm.lifetime.start(i64 16, i8* %6)
+; CHECK: call void @llvm.lifetime.start.p0i8(i64 16, i8* %6)
; CHECK: store i128 %new, i128* %2, align 8
; CHECK: %7 = call zeroext i1 @__atomic_compare_exchange(i32 16, i8* %4, i8* %5, i8* %6, i32 5, i32 5)
-; CHECK: call void @llvm.lifetime.end(i64 16, i8* %6)
+; CHECK: call void @llvm.lifetime.end.p0i8(i64 16, i8* %6)
; CHECK: %8 = load i128, i128* %1, align 8
-; CHECK: call void @llvm.lifetime.end(i64 16, i8* %5)
+; CHECK: call void @llvm.lifetime.end.p0i8(i64 16, i8* %5)
; CHECK: %9 = insertvalue { i128, i1 } undef, i128 %8, 0
; CHECK: %10 = insertvalue { i128, i1 } %9, i1 %7, 1
; CHECK: %success = extractvalue { i128, i1 } %10, 1
@@ -204,12 +204,12 @@ define void @test_store_double(double* %arg, double %val) {
; CHECK: %1 = bitcast i16** %arg to i8*
; CHECK: %2 = alloca i16*, align 4
; CHECK: %3 = bitcast i16** %2 to i8*
-; CHECK: call void @llvm.lifetime.start(i64 4, i8* %3)
+; CHECK: call void @llvm.lifetime.start.p0i8(i64 4, i8* %3)
; CHECK: store i16* %old, i16** %2, align 4
; CHECK: %4 = ptrtoint i16* %new to i32
; CHECK: %5 = call zeroext i1 @__atomic_compare_exchange_4(i8* %1, i8* %3, i32 %4, i32 5, i32 2)
; CHECK: %6 = load i16*, i16** %2, align 4
-; CHECK: call void @llvm.lifetime.end(i64 4, i8* %3)
+; CHECK: call void @llvm.lifetime.end.p0i8(i64 4, i8* %3)
; CHECK: %7 = insertvalue { i16*, i1 } undef, i16* %6, 0
; CHECK: %8 = insertvalue { i16*, i1 } %7, i1 %5, 1
; CHECK: %ret = extractvalue { i16*, i1 } %8, 0
@@ -227,10 +227,10 @@ define i16* @test_cmpxchg_ptr(i16** %arg, i16* %old, i16* %new) {
; CHECK: %1 = bitcast fp128* %arg to i8*
; CHECK: %2 = alloca fp128, align 8
; CHECK: %3 = bitcast fp128* %2 to i8*
-; CHECK: call void @llvm.lifetime.start(i64 16, i8* %3)
+; CHECK: call void @llvm.lifetime.start.p0i8(i64 16, i8* %3)
; CHECK: store fp128 %val, fp128* %2, align 8
; CHECK: call void @__atomic_store(i32 16, i8* %1, i8* %3, i32 5)
-; CHECK: call void @llvm.lifetime.end(i64 16, i8* %3)
+; CHECK: call void @llvm.lifetime.end.p0i8(i64 16, i8* %3)
; CHECK: ret void
define void @test_store_fp128(fp128* %arg, fp128 %val) {
store atomic fp128 %val, fp128* %arg seq_cst, align 16
diff --git a/llvm/test/Transforms/BBVectorize/X86/wr-aliases.ll b/llvm/test/Transforms/BBVectorize/X86/wr-aliases.ll
index a6ea27fc3ec..e34414988f3 100644
--- a/llvm/test/Transforms/BBVectorize/X86/wr-aliases.ll
+++ b/llvm/test/Transforms/BBVectorize/X86/wr-aliases.ll
@@ -14,7 +14,7 @@ declare fastcc void @_ZL12printQBezier7QBezier(%class.QBezier.15* byval nocaptur
declare void @llvm.lifetime.start(i64, i8* nocapture) #0
; Function Attrs: nounwind
-declare void @llvm.lifetime.end(i64, i8* nocapture) #0
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) #0
define void @main_arrayctor.cont([10 x %class.QBezier.15]* %beziers, %class.QBezier.15* %agg.tmp.i, %class.QBezier.15* %agg.tmp55.i, %class.QBezier.15* %agg.tmp56.i) {
newFuncRoot:
@@ -134,9 +134,9 @@ arrayctor.cont: ; preds = %newFuncRoot
call fastcc void @_ZL12printQBezier7QBezier(%class.QBezier.15* byval align 8 %agg.tmp55.i)
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %v2, i8* %v3, i64 64, i32 8, i1 false)
call fastcc void @_ZL12printQBezier7QBezier(%class.QBezier.15* byval align 8 %agg.tmp56.i)
- call void @llvm.lifetime.end(i64 64, i8* %v0)
- call void @llvm.lifetime.end(i64 64, i8* %v1)
- call void @llvm.lifetime.end(i64 64, i8* %v2)
+ call void @llvm.lifetime.end.p0i8(i64 64, i8* %v0)
+ call void @llvm.lifetime.end.p0i8(i64 64, i8* %v1)
+ call void @llvm.lifetime.end.p0i8(i64 64, i8* %v2)
br label %arrayctor.cont.ret.exitStub
}
diff --git a/llvm/test/Transforms/CodeGenPrepare/builtin-condition.ll b/llvm/test/Transforms/CodeGenPrepare/builtin-condition.ll
index 0d41e9e1edd..e42529a7b9a 100644
--- a/llvm/test/Transforms/CodeGenPrepare/builtin-condition.ll
+++ b/llvm/test/Transforms/CodeGenPrepare/builtin-condition.ll
@@ -74,39 +74,39 @@ entry:
%chararray = alloca [30 x i8], align 16
%chararray2 = alloca [10 x i8], align 1
%0 = getelementptr inbounds [30 x i8], [30 x i8]* %chararray, i64 0, i64 0
- call void @llvm.lifetime.start(i64 30, i8* %0)
+ call void @llvm.lifetime.start.p0i8(i64 30, i8* %0)
%1 = getelementptr inbounds [10 x i8], [10 x i8]* %chararray2, i64 0, i64 0
- call void @llvm.lifetime.start(i64 10, i8* %1)
+ call void @llvm.lifetime.start.p0i8(i64 10, i8* %1)
%tobool = icmp eq i32 %flag, 0
%cptr.0 = select i1 %tobool, i8* %0, i8* %1
%2 = call i64 @llvm.objectsize.i64.p0i8(i8* %cptr.0, i1 true)
- call void @llvm.lifetime.end(i64 10, i8* %1)
- call void @llvm.lifetime.end(i64 30, i8* %0)
+ call void @llvm.lifetime.end.p0i8(i64 10, i8* %1)
+ call void @llvm.lifetime.end.p0i8(i64 30, i8* %0)
ret i64 %2
; CHECK-LABEL: foo1
; CHECK: ret i64 10
}
-declare void @llvm.lifetime.start(i64, i8* nocapture)
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture)
declare i64 @llvm.objectsize.i64.p0i8(i8*, i1)
-declare void @llvm.lifetime.end(i64, i8* nocapture)
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture)
define i64 @foo2(i32 %n) {
entry:
%Small = alloca [10 x i8], align 1
%Large = alloca [20 x i8], align 16
%0 = getelementptr inbounds [10 x i8], [10 x i8]* %Small, i64 0, i64 0
- call void @llvm.lifetime.start(i64 10, i8* %0)
+ call void @llvm.lifetime.start.p0i8(i64 10, i8* %0)
%1 = getelementptr inbounds [20 x i8], [20 x i8]* %Large, i64 0, i64 0
- call void @llvm.lifetime.start(i64 20, i8* %1)
+ call void @llvm.lifetime.start.p0i8(i64 20, i8* %1)
%tobool = icmp ne i32 %n, 0
%add.ptr = getelementptr inbounds [20 x i8], [20 x i8]* %Large, i64 0, i64 19
%cond = select i1 %tobool, i8* %0, i8* %add.ptr
%2 = call i64 @llvm.objectsize.i64.p0i8(i8* %cond, i1 false)
- call void @llvm.lifetime.end(i64 20, i8* %1)
- call void @llvm.lifetime.end(i64 10, i8* %0)
+ call void @llvm.lifetime.end.p0i8(i64 20, i8* %1)
+ call void @llvm.lifetime.end.p0i8(i64 10, i8* %0)
ret i64 %2
; CHECK-LABEL: foo2
; CHECK: ret i64 10
diff --git a/llvm/test/Transforms/Coroutines/coro-split-dbg.ll b/llvm/test/Transforms/Coroutines/coro-split-dbg.ll
index d214ce5b430..80f706879e5 100644
--- a/llvm/test/Transforms/Coroutines/coro-split-dbg.ll
+++ b/llvm/test/Transforms/Coroutines/coro-split-dbg.ll
@@ -43,7 +43,7 @@ coro_Suspend: ; preds = %for.cond, %if.then,
}
; Function Attrs: argmemonly nounwind
-declare void @llvm.lifetime.start(i64, i8* nocapture) #4
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) #4
; Function Attrs: argmemonly nounwind readonly
declare token @llvm.coro.id(i32, i8* readnone, i8* nocapture readonly, i8*) #5
@@ -54,7 +54,7 @@ declare i64 @llvm.coro.size.i64() #1
declare i8* @llvm.coro.begin(token, i8* writeonly) #7
declare token @llvm.coro.save(i8*) #7
declare i8 @llvm.coro.suspend(token, i1) #7
-declare void @llvm.lifetime.end(i64, i8* nocapture) #4
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) #4
declare i8* @llvm.coro.free(token, i8* nocapture readonly) #5
declare void @free(i8* nocapture) local_unnamed_addr #6
declare i1 @llvm.coro.end(i8*, i1) #7
diff --git a/llvm/test/Transforms/CorrelatedValuePropagation/alloca.ll b/llvm/test/Transforms/CorrelatedValuePropagation/alloca.ll
index 0a6ba675a47..37b27b29445 100644
--- a/llvm/test/Transforms/CorrelatedValuePropagation/alloca.ll
+++ b/llvm/test/Transforms/CorrelatedValuePropagation/alloca.ll
@@ -13,14 +13,14 @@ target triple = "x86_64-unknown-linux-gnu"
@.str = private unnamed_addr constant [8 x i8] c"a = %l\0A\00", align 1
; Function Attrs: argmemonly nounwind
-declare void @llvm.lifetime.start(i64, i8* nocapture)
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture)
declare void @hoo(i64*)
declare i32 @printf(i8* nocapture readonly, ...)
; Function Attrs: argmemonly nounwind
-declare void @llvm.lifetime.end(i64, i8* nocapture)
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture)
define void @goo(i32 %N, i64* %b) {
entry:
@@ -35,12 +35,12 @@ for.cond: ; preds = %for.body, %entry
br i1 %cmp, label %for.body, label %for.end
for.body: ; preds = %for.cond
- call void @llvm.lifetime.start(i64 8, i8* %tmp)
+ call void @llvm.lifetime.start.p0i8(i64 8, i8* %tmp)
call void @hoo(i64* %a.i)
call void @hoo(i64* %c)
%tmp1 = load volatile i64, i64* %a.i, align 8
%call.i = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str, i64 0, i64 0), i64 %tmp1)
- call void @llvm.lifetime.end(i64 8, i8* %tmp)
+ call void @llvm.lifetime.end.p0i8(i64 8, i8* %tmp)
%inc = add nsw i32 %i.0, 1
br label %for.cond
diff --git a/llvm/test/Transforms/DeadStoreElimination/dominate.ll b/llvm/test/Transforms/DeadStoreElimination/dominate.ll
index 638992bae72..24dd65e07bb 100644
--- a/llvm/test/Transforms/DeadStoreElimination/dominate.ll
+++ b/llvm/test/Transforms/DeadStoreElimination/dominate.ll
@@ -9,12 +9,12 @@ bb1:
br label %bb3
bb2:
- call void @llvm.lifetime.end(i64 -1, i8* %0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %0)
br label %bb3
bb3:
call void @bar()
- call void @llvm.lifetime.end(i64 -1, i8* %0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %0)
br label %bb4
bb4:
@@ -22,4 +22,4 @@ bb4:
}
-declare void @llvm.lifetime.end(i64, i8* nocapture) nounwind
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) nounwind
diff --git a/llvm/test/Transforms/DeadStoreElimination/lifetime.ll b/llvm/test/Transforms/DeadStoreElimination/lifetime.ll
index 305c916dc02..97f199b5e0f 100644
--- a/llvm/test/Transforms/DeadStoreElimination/lifetime.ll
+++ b/llvm/test/Transforms/DeadStoreElimination/lifetime.ll
@@ -2,8 +2,8 @@
target datalayout = "E-p:64:64:64-a0:0:8-f32:32:32-f64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-v64:64:64-v128:128:128"
-declare void @llvm.lifetime.start(i64, i8* nocapture) nounwind
-declare void @llvm.lifetime.end(i64, i8* nocapture) nounwind
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) nounwind
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) nounwind
declare void @llvm.memset.p0i8.i8(i8* nocapture, i8, i8, i32, i1) nounwind
define void @test1() {
@@ -11,7 +11,7 @@ define void @test1() {
%A = alloca i8
store i8 0, i8* %A ;; Written to by memset
- call void @llvm.lifetime.end(i64 1, i8* %A)
+ call void @llvm.lifetime.end.p0i8(i64 1, i8* %A)
; CHECK: lifetime.end
call void @llvm.memset.p0i8.i8(i8* %A, i8 0, i8 -1, i32 0, i1 false)
@@ -25,11 +25,11 @@ define void @test2(i32* %P) {
; CHECK: test2
%Q = getelementptr i32, i32* %P, i32 1
%R = bitcast i32* %Q to i8*
- call void @llvm.lifetime.start(i64 4, i8* %R)
+ call void @llvm.lifetime.start.p0i8(i64 4, i8* %R)
; CHECK: lifetime.start
store i32 0, i32* %Q ;; This store is dead.
; CHECK-NOT: store
- call void @llvm.lifetime.end(i64 4, i8* %R)
+ call void @llvm.lifetime.end.p0i8(i64 4, i8* %R)
; CHECK: lifetime.end
ret void
}
diff --git a/llvm/test/Transforms/GVN/cond_br2.ll b/llvm/test/Transforms/GVN/cond_br2.ll
index baa282ec200..a3749510cb4 100644
--- a/llvm/test/Transforms/GVN/cond_br2.ll
+++ b/llvm/test/Transforms/GVN/cond_br2.ll
@@ -18,7 +18,7 @@ define void @_Z4testv() #0 personality i8* bitcast (i32 (...)* @__gxx_personalit
entry:
%sv = alloca %"class.llvm::SmallVector", align 16
%0 = bitcast %"class.llvm::SmallVector"* %sv to i8*
- call void @llvm.lifetime.start(i64 64, i8* %0) #1
+ call void @llvm.lifetime.start.p0i8(i64 64, i8* %0) #1
%BeginX.i.i.i.i.i.i = getelementptr inbounds %"class.llvm::SmallVector", %"class.llvm::SmallVector"* %sv, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0
%FirstEl.i.i.i.i.i.i = getelementptr inbounds %"class.llvm::SmallVector", %"class.llvm::SmallVector"* %sv, i64 0, i32 0, i32 0, i32 0, i32 0, i32 3
%1 = bitcast %"union.llvm::SmallVectorBase::U"* %FirstEl.i.i.i.i.i.i to i8*
@@ -94,7 +94,7 @@ if.then.i.i.i20: ; preds = %invoke.cont3
br label %_ZN4llvm11SmallVectorIiLj8EED1Ev.exit21
_ZN4llvm11SmallVectorIiLj8EED1Ev.exit21: ; preds = %invoke.cont3, %if.then.i.i.i20
- call void @llvm.lifetime.end(i64 64, i8* %0) #1
+ call void @llvm.lifetime.end.p0i8(i64 64, i8* %0) #1
ret void
lpad: ; preds = %if.end.i14, %if.end.i, %invoke.cont2
@@ -113,14 +113,14 @@ eh.resume: ; preds = %if.then.i.i.i, %lpa
}
; Function Attrs: nounwind
-declare void @llvm.lifetime.start(i64, i8* nocapture) #1
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) #1
declare i32 @__gxx_personality_v0(...)
declare void @_Z1gRN4llvm11SmallVectorIiLj8EEE(%"class.llvm::SmallVector"*) #2
; Function Attrs: nounwind
-declare void @llvm.lifetime.end(i64, i8* nocapture) #1
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) #1
declare void @_ZN4llvm15SmallVectorBase8grow_podEmm(%"class.llvm::SmallVectorBase"*, i64, i64) #2
diff --git a/llvm/test/Transforms/GVN/lifetime-simple.ll b/llvm/test/Transforms/GVN/lifetime-simple.ll
index d03b62c8158..8da3e4cbd30 100644
--- a/llvm/test/Transforms/GVN/lifetime-simple.ll
+++ b/llvm/test/Transforms/GVN/lifetime-simple.ll
@@ -8,13 +8,13 @@ define i8 @test(i8* %P) nounwind {
; CHECK-NOT: load
; CHECK: lifetime.end
entry:
- call void @llvm.lifetime.start(i64 32, i8* %P)
+ call void @llvm.lifetime.start.p0i8(i64 32, i8* %P)
%0 = load i8, i8* %P
store i8 1, i8* %P
- call void @llvm.lifetime.end(i64 32, i8* %P)
+ call void @llvm.lifetime.end.p0i8(i64 32, i8* %P)
%1 = load i8, i8* %P
ret i8 %1
}
-declare void @llvm.lifetime.start(i64 %S, i8* nocapture %P) readonly
-declare void @llvm.lifetime.end(i64 %S, i8* nocapture %P)
+declare void @llvm.lifetime.start.p0i8(i64 %S, i8* nocapture %P) readonly
+declare void @llvm.lifetime.end.p0i8(i64 %S, i8* nocapture %P)
diff --git a/llvm/test/Transforms/GVNHoist/pr29034.ll b/llvm/test/Transforms/GVNHoist/pr29034.ll
index 5e725ad38c8..c0fcc3e741a 100644
--- a/llvm/test/Transforms/GVNHoist/pr29034.ll
+++ b/llvm/test/Transforms/GVNHoist/pr29034.ll
@@ -38,7 +38,7 @@ define void @music_task(i8* nocapture readnone %p) local_unnamed_addr {
entry:
%mapi = alloca %struct._MUSIC_OP_API_*, align 8
%0 = bitcast %struct._MUSIC_OP_API_** %mapi to i8*
- call void @llvm.lifetime.start(i64 8, i8* %0)
+ call void @llvm.lifetime.start.p0i8(i64 8, i8* %0)
store %struct._MUSIC_OP_API_* null, %struct._MUSIC_OP_API_** %mapi, align 8, !tbaa !1
%call = call i32 @music_decoder_init(%struct._MUSIC_OP_API_** nonnull %mapi)
br label %while.cond
@@ -103,7 +103,7 @@ while.cond2.backedge: ; preds = %sw.default, %sw.bb1
br label %while.cond2
}
-declare void @llvm.lifetime.start(i64, i8* nocapture)
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture)
declare i32 @music_decoder_init(%struct._MUSIC_OP_API_**)
declare i32 @music_play_api(%struct._MUSIC_OP_API_*, i32, i32, i32, i8*)
declare i32 @printf(i8* nocapture readonly, ...)
diff --git a/llvm/test/Transforms/IndVarSimplify/exit_value_test2.ll b/llvm/test/Transforms/IndVarSimplify/exit_value_test2.ll
index 24e3e95a891..ee641667506 100644
--- a/llvm/test/Transforms/IndVarSimplify/exit_value_test2.ll
+++ b/llvm/test/Transforms/IndVarSimplify/exit_value_test2.ll
@@ -8,14 +8,14 @@
; CHECK-NOT: udiv
declare void @_Z3mixRjj(i32* dereferenceable(4), i32)
-declare void @llvm.lifetime.start(i64, i8* nocapture)
-declare void @llvm.lifetime.end(i64, i8* nocapture)
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture)
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture)
define i32 @_Z3fooPKcjj(i8* nocapture readonly %s, i32 %len, i32 %c) {
entry:
%a = alloca i32, align 4
%tmp = bitcast i32* %a to i8*
- call void @llvm.lifetime.start(i64 4, i8* %tmp)
+ call void @llvm.lifetime.start.p0i8(i64 4, i8* %tmp)
store i32 -1640531527, i32* %a, align 4
%cmp8 = icmp ugt i32 %len, 11
br i1 %cmp8, label %while.body.lr.ph, label %while.end
@@ -47,6 +47,6 @@ while.end: ; preds = %while.cond.while.en
%keylen.0.lcssa = phi i32 [ %sub.lcssa, %while.cond.while.end_crit_edge ], [ %len, %entry ]
call void @_Z3mixRjj(i32* dereferenceable(4) %a, i32 %keylen.0.lcssa)
%tmp4 = load i32, i32* %a, align 4
- call void @llvm.lifetime.end(i64 4, i8* %tmp)
+ call void @llvm.lifetime.end.p0i8(i64 4, i8* %tmp)
ret i32 %tmp4
}
diff --git a/llvm/test/Transforms/Inline/alloca-bonus.ll b/llvm/test/Transforms/Inline/alloca-bonus.ll
index 542dcee0fcb..c5c2ce11cc5 100644
--- a/llvm/test/Transforms/Inline/alloca-bonus.ll
+++ b/llvm/test/Transforms/Inline/alloca-bonus.ll
@@ -3,7 +3,7 @@
target datalayout = "p:32:32"
-declare void @llvm.lifetime.start(i64 %size, i8* nocapture %ptr)
+declare void @llvm.lifetime.start.p0i8(i64 %size, i8* nocapture %ptr)
@glbl = external global i32
@@ -22,7 +22,7 @@ define void @inner1(i32 *%ptr) {
%D = getelementptr inbounds i32, i32* %ptr, i32 1
%E = bitcast i32* %ptr to i8*
%F = select i1 false, i32* %ptr, i32* @glbl
- call void @llvm.lifetime.start(i64 0, i8* %E)
+ call void @llvm.lifetime.start.p0i8(i64 0, i8* %E)
call void @extern()
ret void
}
@@ -43,7 +43,7 @@ define void @inner2(i32 *%ptr) {
%D = getelementptr inbounds i32, i32* %ptr, i32 %A
%E = bitcast i32* %ptr to i8*
%F = select i1 false, i32* %ptr, i32* @glbl
- call void @llvm.lifetime.start(i64 0, i8* %E)
+ call void @llvm.lifetime.start.p0i8(i64 0, i8* %E)
call void @extern()
ret void
}
@@ -152,7 +152,7 @@ if.then:
%D = getelementptr inbounds i32, i32* %ptr, i32 %A
%E = bitcast i32* %ptr to i8*
%F = select i1 false, i32* %ptr, i32* @glbl
- call void @llvm.lifetime.start(i64 0, i8* %E)
+ call void @llvm.lifetime.start.p0i8(i64 0, i8* %E)
ret void
exit:
diff --git a/llvm/test/Transforms/Inline/crash-lifetime-marker.ll b/llvm/test/Transforms/Inline/crash-lifetime-marker.ll
index e7a594cdb5e..7196616521e 100644
--- a/llvm/test/Transforms/Inline/crash-lifetime-marker.ll
+++ b/llvm/test/Transforms/Inline/crash-lifetime-marker.ll
@@ -15,9 +15,9 @@ define i32 @callee1(i32 %count) {
; CHECK-LABEL: define i32 @caller1(
; CHECK: [[ALLOCA:%[a-z0-9\.]+]] = alloca i8
-; CHECK-NOT: call void @llvm.lifetime.start(
+; CHECK-NOT: call void @llvm.lifetime.start.p0i8(
; CHECK: call i32 @callee2(i8* [[ALLOCA]])
-; CHECK-NOT: call void @llvm.lifetime.end(
+; CHECK-NOT: call void @llvm.lifetime.end.p0i8(
define i32 @caller1(i32 %count) {
%call0 = call i32 @callee1(i32 0)
diff --git a/llvm/test/Transforms/Inline/lifetime-no-datalayout.ll b/llvm/test/Transforms/Inline/lifetime-no-datalayout.ll
index 0212e69d624..5d1872c6a24 100644
--- a/llvm/test/Transforms/Inline/lifetime-no-datalayout.ll
+++ b/llvm/test/Transforms/Inline/lifetime-no-datalayout.ll
@@ -13,9 +13,9 @@ define void @helper() {
define void @test() {
; CHECK-LABEL: @test(
; CHECK-NOT: lifetime
-; CHECK: llvm.lifetime.start(i64 1
+; CHECK: llvm.lifetime.start.p0i8(i64 1
; CHECK-NOT: lifetime
-; CHECK: llvm.lifetime.end(i64 1
+; CHECK: llvm.lifetime.end.p0i8(i64 1
call void @helper()
; CHECK-NOT: lifetime
; CHECK: ret void
diff --git a/llvm/test/Transforms/Inline/lifetime.ll b/llvm/test/Transforms/Inline/lifetime.ll
index 4f415e58f1b..c47091395fc 100644
--- a/llvm/test/Transforms/Inline/lifetime.ll
+++ b/llvm/test/Transforms/Inline/lifetime.ll
@@ -2,25 +2,25 @@
; RUN: opt -passes='cgscc(inline)' -S < %s | FileCheck %s
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
-declare void @llvm.lifetime.start(i64, i8*)
-declare void @llvm.lifetime.end(i64, i8*)
+declare void @llvm.lifetime.start.p0i8(i64, i8*)
+declare void @llvm.lifetime.end.p0i8(i64, i8*)
define void @helper_both_markers() {
%a = alloca i8
; Size in llvm.lifetime.start / llvm.lifetime.end differs from
; allocation size. We should use the former.
- call void @llvm.lifetime.start(i64 2, i8* %a)
- call void @llvm.lifetime.end(i64 2, i8* %a)
+ call void @llvm.lifetime.start.p0i8(i64 2, i8* %a)
+ call void @llvm.lifetime.end.p0i8(i64 2, i8* %a)
ret void
}
define void @test_both_markers() {
; CHECK-LABEL: @test_both_markers(
-; CHECK: llvm.lifetime.start(i64 2
-; CHECK-NEXT: llvm.lifetime.end(i64 2
+; CHECK: llvm.lifetime.start.p0i8(i64 2
+; CHECK-NEXT: llvm.lifetime.end.p0i8(i64 2
call void @helper_both_markers()
-; CHECK-NEXT: llvm.lifetime.start(i64 2
-; CHECK-NEXT: llvm.lifetime.end(i64 2
+; CHECK-NEXT: llvm.lifetime.start.p0i8(i64 2
+; CHECK-NEXT: llvm.lifetime.end.p0i8(i64 2
call void @helper_both_markers()
; CHECK-NEXT: ret void
ret void
@@ -41,14 +41,14 @@ define void @helper_no_markers() {
define void @test_no_marker() {
; CHECK-LABEL: @test_no_marker(
; CHECK-NOT: lifetime
-; CHECK: llvm.lifetime.start(i64 1
+; CHECK: llvm.lifetime.start.p0i8(i64 1
; CHECK-NOT: lifetime
-; CHECK: llvm.lifetime.end(i64 1
+; CHECK: llvm.lifetime.end.p0i8(i64 1
call void @helper_no_markers()
; CHECK-NOT: lifetime
-; CHECK: llvm.lifetime.start(i64 1
+; CHECK: llvm.lifetime.start.p0i8(i64 1
; CHECK-NOT: lifetime
-; CHECK: llvm.lifetime.end(i64 1
+; CHECK: llvm.lifetime.end.p0i8(i64 1
call void @helper_no_markers()
; CHECK-NOT: lifetime
; CHECK: ret void
@@ -58,23 +58,23 @@ define void @test_no_marker() {
define void @helper_two_casts() {
%a = alloca i32
%b = bitcast i32* %a to i8*
- call void @llvm.lifetime.start(i64 4, i8* %b)
+ call void @llvm.lifetime.start.p0i8(i64 4, i8* %b)
%c = bitcast i32* %a to i8*
- call void @llvm.lifetime.end(i64 4, i8* %c)
+ call void @llvm.lifetime.end.p0i8(i64 4, i8* %c)
ret void
}
define void @test_two_casts() {
; CHECK-LABEL: @test_two_casts(
; CHECK-NOT: lifetime
-; CHECK: llvm.lifetime.start(i64 4
+; CHECK: llvm.lifetime.start.p0i8(i64 4
; CHECK-NOT: lifetime
-; CHECK: llvm.lifetime.end(i64 4
+; CHECK: llvm.lifetime.end.p0i8(i64 4
call void @helper_two_casts()
; CHECK-NOT: lifetime
-; CHECK: llvm.lifetime.start(i64 4
+; CHECK: llvm.lifetime.start.p0i8(i64 4
; CHECK-NOT: lifetime
-; CHECK: llvm.lifetime.end(i64 4
+; CHECK: llvm.lifetime.end.p0i8(i64 4
call void @helper_two_casts()
; CHECK-NOT: lifetime
; CHECK: ret void
@@ -91,9 +91,9 @@ define void @helper_arrays_alloca() {
define void @test_arrays_alloca() {
; CHECK-LABEL: @test_arrays_alloca(
; CHECK-NOT: lifetime
-; CHECK: llvm.lifetime.start(i64 40,
+; CHECK: llvm.lifetime.start.p0i8(i64 40,
; CHECK-NOT: lifetime
-; CHECK: llvm.lifetime.end(i64 40,
+; CHECK: llvm.lifetime.end.p0i8(i64 40,
call void @helper_arrays_alloca()
; CHECK-NOT: lifetime
; CHECK: ret void
diff --git a/llvm/test/Transforms/InstCombine/builtin-object-size-offset.ll b/llvm/test/Transforms/InstCombine/builtin-object-size-offset.ll
index 7ab24a9acd9..248cf644df8 100644
--- a/llvm/test/Transforms/InstCombine/builtin-object-size-offset.ll
+++ b/llvm/test/Transforms/InstCombine/builtin-object-size-offset.ll
@@ -26,25 +26,25 @@ entry:
%Big = alloca [20 x i8], align 16
%Small = alloca [10 x i8], align 1
%0 = getelementptr inbounds [20 x i8], [20 x i8]* %Big, i64 0, i64 0
- call void @llvm.lifetime.start(i64 20, i8* %0)
+ call void @llvm.lifetime.start.p0i8(i64 20, i8* %0)
%1 = getelementptr inbounds [10 x i8], [10 x i8]* %Small, i64 0, i64 0
- call void @llvm.lifetime.start(i64 10, i8* %1)
+ call void @llvm.lifetime.start.p0i8(i64 10, i8* %1)
%tobool = icmp ne i32 %N, 0
%add.ptr = getelementptr inbounds [20 x i8], [20 x i8]* %Big, i64 0, i64 10
%cond = select i1 %tobool, i8* %add.ptr, i8* %1
%2 = call i64 @llvm.objectsize.i64.p0i8(i8* %cond, i1 false)
%conv = trunc i64 %2 to i32
- call void @llvm.lifetime.end(i64 10, i8* %1)
- call void @llvm.lifetime.end(i64 20, i8* %0)
+ call void @llvm.lifetime.end.p0i8(i64 10, i8* %1)
+ call void @llvm.lifetime.end.p0i8(i64 20, i8* %0)
ret i32 %conv
; CHECK: ret i32 10
}
-declare void @llvm.lifetime.start(i64, i8* nocapture)
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture)
declare i64 @llvm.objectsize.i64.p0i8(i8*, i1)
-declare void @llvm.lifetime.end(i64, i8* nocapture)
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture)
define void @foo() {
entry:
diff --git a/llvm/test/Transforms/InstCombine/builtin-object-size-ptr.ll b/llvm/test/Transforms/InstCombine/builtin-object-size-ptr.ll
index b38513999dc..ada3fc16702 100644
--- a/llvm/test/Transforms/InstCombine/builtin-object-size-ptr.ll
+++ b/llvm/test/Transforms/InstCombine/builtin-object-size-ptr.ll
@@ -16,19 +16,19 @@ define i32 @foo() #0 {
entry:
%var = alloca %struct.V, align 4
%0 = bitcast %struct.V* %var to i8*
- call void @llvm.lifetime.start(i64 28, i8* %0) #3
+ call void @llvm.lifetime.start.p0i8(i64 28, i8* %0) #3
%buf1 = getelementptr inbounds %struct.V, %struct.V* %var, i32 0, i32 0
%arrayidx = getelementptr inbounds [10 x i8], [10 x i8]* %buf1, i64 0, i64 1
%1 = call i64 @llvm.objectsize.i64.p0i8(i8* %arrayidx, i1 false)
%conv = trunc i64 %1 to i32
- call void @llvm.lifetime.end(i64 28, i8* %0) #3
+ call void @llvm.lifetime.end.p0i8(i64 28, i8* %0) #3
ret i32 %conv
; CHECK: ret i32 27
; CHECK-NOT: ret i32 -1
}
-declare void @llvm.lifetime.start(i64, i8* nocapture) #1
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) #1
declare i64 @llvm.objectsize.i64.p0i8(i8*, i1) #2
-declare void @llvm.lifetime.end(i64, i8* nocapture) #1
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) #1
diff --git a/llvm/test/Transforms/InstCombine/compare-alloca.ll b/llvm/test/Transforms/InstCombine/compare-alloca.ll
index ca24da19177..414a07825f2 100644
--- a/llvm/test/Transforms/InstCombine/compare-alloca.ll
+++ b/llvm/test/Transforms/InstCombine/compare-alloca.ll
@@ -72,15 +72,15 @@ define i1 @alloca_argument_compare_escaped_through_store(i64* %arg, i64** %ptr)
; CHECK: ret i1 %cmp
}
-declare void @llvm.lifetime.start(i64, i8* nocapture)
-declare void @llvm.lifetime.end(i64, i8* nocapture)
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture)
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture)
define i1 @alloca_argument_compare_benign_instrs(i8* %arg) {
%alloc = alloca i8
- call void @llvm.lifetime.start(i64 1, i8* %alloc)
+ call void @llvm.lifetime.start.p0i8(i64 1, i8* %alloc)
%cmp = icmp eq i8* %arg, %alloc
%x = load i8, i8* %arg
store i8 %x, i8* %alloc
- call void @llvm.lifetime.end(i64 1, i8* %alloc)
+ call void @llvm.lifetime.end.p0i8(i64 1, i8* %alloc)
ret i1 %cmp
; CHECK-LABEL: alloca_argument_compare_benign_instrs
; CHECK: ret i1 false
diff --git a/llvm/test/Transforms/InstCombine/deadcode.ll b/llvm/test/Transforms/InstCombine/deadcode.ll
index 8fe673d8c9c..c5fa58babdb 100644
--- a/llvm/test/Transforms/InstCombine/deadcode.ll
+++ b/llvm/test/Transforms/InstCombine/deadcode.ll
@@ -22,12 +22,12 @@ define i32* @test2(i32 %width) {
declare i8* @llvm.stacksave()
-declare void @llvm.lifetime.start(i64, i8*)
-declare void @llvm.lifetime.end(i64, i8*)
+declare void @llvm.lifetime.start.p0i8(i64, i8*)
+declare void @llvm.lifetime.end.p0i8(i64, i8*)
define void @test3() {
- call void @llvm.lifetime.start(i64 -1, i8* undef)
- call void @llvm.lifetime.end(i64 -1, i8* undef)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* undef)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* undef)
ret void
}
diff --git a/llvm/test/Transforms/InstCombine/lifetime-asan.ll b/llvm/test/Transforms/InstCombine/lifetime-asan.ll
index f52c0202b77..7fdc1fcbc3b 100644
--- a/llvm/test/Transforms/InstCombine/lifetime-asan.ll
+++ b/llvm/test/Transforms/InstCombine/lifetime-asan.ll
@@ -1,7 +1,7 @@
; RUN: opt < %s -instcombine -S | FileCheck %s
-declare void @llvm.lifetime.start(i64, i8* nocapture)
-declare void @llvm.lifetime.end(i64, i8* nocapture)
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture)
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture)
declare void @foo(i8* nocapture)
define void @asan() sanitize_address {
@@ -9,8 +9,8 @@ entry:
; CHECK-LABEL: @asan(
%text = alloca i8, align 1
- call void @llvm.lifetime.start(i64 1, i8* %text)
- call void @llvm.lifetime.end(i64 1, i8* %text)
+ call void @llvm.lifetime.start.p0i8(i64 1, i8* %text)
+ call void @llvm.lifetime.end.p0i8(i64 1, i8* %text)
; CHECK: call void @llvm.lifetime.start
; CHECK-NEXT: call void @llvm.lifetime.end
@@ -25,8 +25,8 @@ entry:
; CHECK-LABEL: @no_asan(
%text = alloca i8, align 1
- call void @llvm.lifetime.start(i64 1, i8* %text)
- call void @llvm.lifetime.end(i64 1, i8* %text)
+ call void @llvm.lifetime.start.p0i8(i64 1, i8* %text)
+ call void @llvm.lifetime.end.p0i8(i64 1, i8* %text)
; CHECK-NO: call void @llvm.lifetime
call void @foo(i8* %text) ; Keep alloca alive
diff --git a/llvm/test/Transforms/InstCombine/lifetime.ll b/llvm/test/Transforms/InstCombine/lifetime.ll
index c296d29b99b..71c676233b0 100644
--- a/llvm/test/Transforms/InstCombine/lifetime.ll
+++ b/llvm/test/Transforms/InstCombine/lifetime.ll
@@ -1,8 +1,8 @@
; RUN: opt < %s -instcombine -S | FileCheck %s
declare void @llvm.dbg.declare(metadata, metadata, metadata)
-declare void @llvm.lifetime.start(i64, i8* nocapture)
-declare void @llvm.lifetime.end(i64, i8* nocapture)
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture)
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture)
declare void @foo(i8* nocapture, i8* nocapture)
define void @bar(i1 %flag) !dbg !4 {
@@ -17,11 +17,11 @@ entry:
; CHECK: bb3:
; CHECK-NEXT: call void @llvm.dbg.declare
; CHECK-NEXT: br label %fin
-; CHECK: call void @llvm.lifetime.start(i64 1, i8* %[[T]])
-; CHECK-NEXT: call void @llvm.lifetime.start(i64 1, i8* %[[B]])
+; CHECK: call void @llvm.lifetime.start.p0i8(i64 1, i8* %[[T]])
+; CHECK-NEXT: call void @llvm.lifetime.start.p0i8(i64 1, i8* %[[B]])
; CHECK-NEXT: call void @foo(i8* %[[B]], i8* %[[T]])
-; CHECK-NEXT: call void @llvm.lifetime.end(i64 1, i8* %[[B]])
-; CHECK-NEXT: call void @llvm.lifetime.end(i64 1, i8* %[[T]])
+; CHECK-NEXT: call void @llvm.lifetime.end.p0i8(i64 1, i8* %[[B]])
+; CHECK-NEXT: call void @llvm.lifetime.end.p0i8(i64 1, i8* %[[T]])
%text = alloca [1 x i8], align 1
%buff = alloca [1 x i8], align 1
%0 = getelementptr inbounds [1 x i8], [1 x i8]* %text, i64 0, i64 0
@@ -29,31 +29,31 @@ entry:
br i1 %flag, label %if, label %else
if:
- call void @llvm.lifetime.start(i64 1, i8* %0)
- call void @llvm.lifetime.start(i64 1, i8* %1)
- call void @llvm.lifetime.end(i64 1, i8* %1)
- call void @llvm.lifetime.end(i64 1, i8* %0)
+ call void @llvm.lifetime.start.p0i8(i64 1, i8* %0)
+ call void @llvm.lifetime.start.p0i8(i64 1, i8* %1)
+ call void @llvm.lifetime.end.p0i8(i64 1, i8* %1)
+ call void @llvm.lifetime.end.p0i8(i64 1, i8* %0)
br label %bb2
bb2:
- call void @llvm.lifetime.start(i64 1, i8* %0)
- call void @llvm.lifetime.start(i64 1, i8* %1)
- call void @llvm.lifetime.end(i64 1, i8* %0)
- call void @llvm.lifetime.end(i64 1, i8* %1)
+ call void @llvm.lifetime.start.p0i8(i64 1, i8* %0)
+ call void @llvm.lifetime.start.p0i8(i64 1, i8* %1)
+ call void @llvm.lifetime.end.p0i8(i64 1, i8* %0)
+ call void @llvm.lifetime.end.p0i8(i64 1, i8* %1)
br label %bb3
bb3:
- call void @llvm.lifetime.start(i64 1, i8* %0)
+ call void @llvm.lifetime.start.p0i8(i64 1, i8* %0)
call void @llvm.dbg.declare(metadata [1 x i8]* %text, metadata !14, metadata !25), !dbg !26
- call void @llvm.lifetime.end(i64 1, i8* %0)
+ call void @llvm.lifetime.end.p0i8(i64 1, i8* %0)
br label %fin
else:
- call void @llvm.lifetime.start(i64 1, i8* %0)
- call void @llvm.lifetime.start(i64 1, i8* %1)
+ call void @llvm.lifetime.start.p0i8(i64 1, i8* %0)
+ call void @llvm.lifetime.start.p0i8(i64 1, i8* %1)
call void @foo(i8* %1, i8* %0)
- call void @llvm.lifetime.end(i64 1, i8* %1)
- call void @llvm.lifetime.end(i64 1, i8* %0)
+ call void @llvm.lifetime.end.p0i8(i64 1, i8* %1)
+ call void @llvm.lifetime.end.p0i8(i64 1, i8* %0)
br label %fin
fin:
diff --git a/llvm/test/Transforms/InstCombine/malloc-free-delete.ll b/llvm/test/Transforms/InstCombine/malloc-free-delete.ll
index 8fcb8214360..7a5c7457e36 100644
--- a/llvm/test/Transforms/InstCombine/malloc-free-delete.ll
+++ b/llvm/test/Transforms/InstCombine/malloc-free-delete.ll
@@ -24,8 +24,8 @@ define i1 @foo() {
ret i1 %z
}
-declare void @llvm.lifetime.start(i64, i8*)
-declare void @llvm.lifetime.end(i64, i8*)
+declare void @llvm.lifetime.start.p0i8(i64, i8*)
+declare void @llvm.lifetime.end.p0i8(i64, i8*)
declare i64 @llvm.objectsize.i64(i8*, i1)
declare void @llvm.memcpy.p0i8.p0i8.i32(i8* nocapture, i8* nocapture, i32, i32, i1) nounwind
declare void @llvm.memmove.p0i8.p0i8.i32(i8* nocapture, i8* nocapture, i32, i32, i1) nounwind
@@ -35,8 +35,8 @@ define void @test3(i8* %src) {
; CHECK-LABEL: @test3(
; CHECK-NEXT: ret void
%a = call noalias i8* @malloc(i32 10)
- call void @llvm.lifetime.start(i64 10, i8* %a)
- call void @llvm.lifetime.end(i64 10, i8* %a)
+ call void @llvm.lifetime.start.p0i8(i64 10, i8* %a)
+ call void @llvm.lifetime.end.p0i8(i64 10, i8* %a)
%size = call i64 @llvm.objectsize.i64(i8* %a, i1 true)
store i8 42, i8* %a
call void @llvm.memcpy.p0i8.p0i8.i32(i8* %a, i8* %src, i32 32, i32 1, i1 false)
diff --git a/llvm/test/Transforms/InstCombine/memcpy-from-global.ll b/llvm/test/Transforms/InstCombine/memcpy-from-global.ll
index da38087d739..7c9384d89ba 100644
--- a/llvm/test/Transforms/InstCombine/memcpy-from-global.ll
+++ b/llvm/test/Transforms/InstCombine/memcpy-from-global.ll
@@ -126,11 +126,11 @@ define void @test4() {
ret void
}
-declare void @llvm.lifetime.start(i64, i8*)
+declare void @llvm.lifetime.start.p0i8(i64, i8*)
define void @test5() {
%A = alloca %T
%a = bitcast %T* %A to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %a)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %a)
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %a, i8* bitcast (%T* @G to i8*), i64 124, i32 4, i1 false)
call void @baz(i8* byval %a)
; CHECK-LABEL: @test5(
diff --git a/llvm/test/Transforms/InstCombine/vararg.ll b/llvm/test/Transforms/InstCombine/vararg.ll
index 263a7425a07..111cb4de7bc 100644
--- a/llvm/test/Transforms/InstCombine/vararg.ll
+++ b/llvm/test/Transforms/InstCombine/vararg.ll
@@ -2,8 +2,8 @@
%struct.__va_list = type { i8*, i8*, i8*, i32, i32 }
-declare void @llvm.lifetime.start(i64, i8* nocapture)
-declare void @llvm.lifetime.end(i64, i8* nocapture)
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture)
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture)
declare void @llvm.va_start(i8*)
declare void @llvm.va_end(i8*)
declare void @llvm.va_copy(i8*, i8*)
@@ -17,14 +17,14 @@ entry:
%va1 = alloca %struct.__va_list, align 8
%0 = bitcast %struct.__va_list* %va0 to i8*
%1 = bitcast %struct.__va_list* %va1 to i8*
- call void @llvm.lifetime.start(i64 32, i8* %0)
+ call void @llvm.lifetime.start.p0i8(i64 32, i8* %0)
call void @llvm.va_start(i8* %0)
- call void @llvm.lifetime.start(i64 32, i8* %1)
+ call void @llvm.lifetime.start.p0i8(i64 32, i8* %1)
call void @llvm.va_copy(i8* %1, i8* %0)
call void @llvm.va_end(i8* %1)
- call void @llvm.lifetime.end(i64 32, i8* %1)
+ call void @llvm.lifetime.end.p0i8(i64 32, i8* %1)
call void @llvm.va_end(i8* %0)
- call void @llvm.lifetime.end(i64 32, i8* %0)
+ call void @llvm.lifetime.end.p0i8(i64 32, i8* %0)
ret i32 0
}
diff --git a/llvm/test/Transforms/LoopVectorize/lifetime.ll b/llvm/test/Transforms/LoopVectorize/lifetime.ll
index 6e525ca1d82..860fe2d983c 100644
--- a/llvm/test/Transforms/LoopVectorize/lifetime.ll
+++ b/llvm/test/Transforms/LoopVectorize/lifetime.ll
@@ -13,23 +13,23 @@ define void @test(i32 *%d) {
entry:
%arr = alloca [1024 x i32], align 16
%0 = bitcast [1024 x i32]* %arr to i8*
- call void @llvm.lifetime.start(i64 4096, i8* %0) #1
+ call void @llvm.lifetime.start.p0i8(i64 4096, i8* %0) #1
br label %for.body
for.body:
%indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ]
- call void @llvm.lifetime.end(i64 4096, i8* %0) #1
+ call void @llvm.lifetime.end.p0i8(i64 4096, i8* %0) #1
%arrayidx = getelementptr inbounds i32, i32* %d, i64 %indvars.iv
%1 = load i32, i32* %arrayidx, align 8
store i32 100, i32* %arrayidx, align 8
- call void @llvm.lifetime.start(i64 4096, i8* %0) #1
+ call void @llvm.lifetime.start.p0i8(i64 4096, i8* %0) #1
%indvars.iv.next = add i64 %indvars.iv, 1
%lftr.wideiv = trunc i64 %indvars.iv.next to i32
%exitcond = icmp ne i32 %lftr.wideiv, 128
br i1 %exitcond, label %for.body, label %for.end
for.end:
- call void @llvm.lifetime.end(i64 4096, i8* %0) #1
+ call void @llvm.lifetime.end.p0i8(i64 4096, i8* %0) #1
ret void
}
@@ -42,24 +42,24 @@ define void @testbitcast(i32 *%d) {
entry:
%arr = alloca [1024 x i32], align 16
%0 = bitcast [1024 x i32]* %arr to i8*
- call void @llvm.lifetime.start(i64 4096, i8* %0) #1
+ call void @llvm.lifetime.start.p0i8(i64 4096, i8* %0) #1
br label %for.body
for.body:
%indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ]
%1 = bitcast [1024 x i32]* %arr to i8*
- call void @llvm.lifetime.end(i64 4096, i8* %1) #1
+ call void @llvm.lifetime.end.p0i8(i64 4096, i8* %1) #1
%arrayidx = getelementptr inbounds i32, i32* %d, i64 %indvars.iv
%2 = load i32, i32* %arrayidx, align 8
store i32 100, i32* %arrayidx, align 8
- call void @llvm.lifetime.start(i64 4096, i8* %1) #1
+ call void @llvm.lifetime.start.p0i8(i64 4096, i8* %1) #1
%indvars.iv.next = add i64 %indvars.iv, 1
%lftr.wideiv = trunc i64 %indvars.iv.next to i32
%exitcond = icmp ne i32 %lftr.wideiv, 128
br i1 %exitcond, label %for.body, label %for.end
for.end:
- call void @llvm.lifetime.end(i64 4096, i8* %0) #1
+ call void @llvm.lifetime.end.p0i8(i64 4096, i8* %0) #1
ret void
}
@@ -77,11 +77,11 @@ for.body:
%indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ]
%0 = getelementptr [1024 x i32], [1024 x i32]* %arr, i32 0, i64 %indvars.iv
%1 = bitcast [1024 x i32]* %arr to i8*
- call void @llvm.lifetime.end(i64 4096, i8* %1) #1
+ call void @llvm.lifetime.end.p0i8(i64 4096, i8* %1) #1
%arrayidx = getelementptr inbounds i32, i32* %d, i64 %indvars.iv
%2 = load i32, i32* %arrayidx, align 8
store i32 100, i32* %arrayidx, align 8
- call void @llvm.lifetime.start(i64 4096, i8* %1) #1
+ call void @llvm.lifetime.start.p0i8(i64 4096, i8* %1) #1
%indvars.iv.next = add i64 %indvars.iv, 1
%lftr.wideiv = trunc i64 %indvars.iv.next to i32
%exitcond = icmp ne i32 %lftr.wideiv, 128
@@ -91,6 +91,6 @@ for.end:
ret void
}
-declare void @llvm.lifetime.start(i64, i8* nocapture) #1
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) #1
-declare void @llvm.lifetime.end(i64, i8* nocapture) #1
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) #1
diff --git a/llvm/test/Transforms/Mem2Reg/ignore-lifetime.ll b/llvm/test/Transforms/Mem2Reg/ignore-lifetime.ll
index 12adaffc771..b996a659237 100644
--- a/llvm/test/Transforms/Mem2Reg/ignore-lifetime.ll
+++ b/llvm/test/Transforms/Mem2Reg/ignore-lifetime.ll
@@ -1,16 +1,16 @@
; RUN: opt -mem2reg -S -o - < %s | FileCheck %s
-declare void @llvm.lifetime.start(i64 %size, i8* nocapture %ptr)
-declare void @llvm.lifetime.end(i64 %size, i8* nocapture %ptr)
+declare void @llvm.lifetime.start.p0i8(i64 %size, i8* nocapture %ptr)
+declare void @llvm.lifetime.end.p0i8(i64 %size, i8* nocapture %ptr)
define void @test1() {
; CHECK: test1
; CHECK-NOT: alloca
%A = alloca i32
%B = bitcast i32* %A to i8*
- call void @llvm.lifetime.start(i64 2, i8* %B)
+ call void @llvm.lifetime.start.p0i8(i64 2, i8* %B)
store i32 1, i32* %A
- call void @llvm.lifetime.end(i64 2, i8* %B)
+ call void @llvm.lifetime.end.p0i8(i64 2, i8* %B)
ret void
}
@@ -19,8 +19,8 @@ define void @test2() {
; CHECK-NOT: alloca
%A = alloca {i8, i16}
%B = getelementptr {i8, i16}, {i8, i16}* %A, i32 0, i32 0
- call void @llvm.lifetime.start(i64 2, i8* %B)
+ call void @llvm.lifetime.start.p0i8(i64 2, i8* %B)
store {i8, i16} zeroinitializer, {i8, i16}* %A
- call void @llvm.lifetime.end(i64 2, i8* %B)
+ call void @llvm.lifetime.end.p0i8(i64 2, i8* %B)
ret void
}
diff --git a/llvm/test/Transforms/MemCpyOpt/lifetime.ll b/llvm/test/Transforms/MemCpyOpt/lifetime.ll
index 6a7e44692da..77b495f2b58 100644
--- a/llvm/test/Transforms/MemCpyOpt/lifetime.ll
+++ b/llvm/test/Transforms/MemCpyOpt/lifetime.ll
@@ -4,8 +4,8 @@
; @llvm.lifetime.start and @llvm.memcpy.
declare void @llvm.memcpy.p0i8.p0i8.i64(i8* nocapture, i8* nocapture readonly, i64, i32, i1) #1
-declare void @llvm.lifetime.start(i64, i8* nocapture) #1
-declare void @llvm.lifetime.end(i64, i8* nocapture) #1
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) #1
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) #1
define void @_ZN4CordC2EOS_(i8* nocapture dereferenceable(16) %arg1) {
bb:
@@ -14,11 +14,11 @@ bb:
; CHECK: ret void
%tmp = alloca [8 x i8], align 8
%tmp5 = bitcast [8 x i8]* %tmp to i8*
- call void @llvm.lifetime.start(i64 16, i8* %tmp5)
+ call void @llvm.lifetime.start.p0i8(i64 16, i8* %tmp5)
%tmp10 = getelementptr inbounds i8, i8* %tmp5, i64 7
store i8 0, i8* %tmp10, align 1
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %arg1, i8* %tmp5, i64 16, i32 8, i1 false)
- call void @llvm.lifetime.end(i64 16, i8* %tmp5)
+ call void @llvm.lifetime.end.p0i8(i64 16, i8* %tmp5)
ret void
}
diff --git a/llvm/test/Transforms/MemCpyOpt/memcpy-to-memset-with-lifetimes.ll b/llvm/test/Transforms/MemCpyOpt/memcpy-to-memset-with-lifetimes.ll
index e3e57f09d88..e21dc87cb6a 100644
--- a/llvm/test/Transforms/MemCpyOpt/memcpy-to-memset-with-lifetimes.ll
+++ b/llvm/test/Transforms/MemCpyOpt/memcpy-to-memset-with-lifetimes.ll
@@ -7,11 +7,11 @@ define void @foo([8 x i64]* noalias nocapture sret dereferenceable(64) %sret) {
entry-block:
%a = alloca [8 x i64], align 8
%a.cast = bitcast [8 x i64]* %a to i8*
- call void @llvm.lifetime.start(i64 64, i8* %a.cast)
+ call void @llvm.lifetime.start.p0i8(i64 64, i8* %a.cast)
call void @llvm.memset.p0i8.i64(i8* %a.cast, i8 0, i64 64, i32 8, i1 false)
%sret.cast = bitcast [8 x i64]* %sret to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %sret.cast, i8* %a.cast, i64 64, i32 8, i1 false)
- call void @llvm.lifetime.end(i64 64, i8* %a.cast)
+ call void @llvm.lifetime.end.p0i8(i64 64, i8* %a.cast)
ret void
; CHECK-LABEL: @foo(
@@ -25,14 +25,14 @@ define void @bar([8 x i64]* noalias nocapture sret dereferenceable(64) %sret, [8
entry-block:
%a = alloca [8 x i64], align 8
%a.cast = bitcast [8 x i64]* %a to i8*
- call void @llvm.lifetime.start(i64 64, i8* %a.cast)
+ call void @llvm.lifetime.start.p0i8(i64 64, i8* %a.cast)
call void @llvm.memset.p0i8.i64(i8* %a.cast, i8 0, i64 64, i32 8, i1 false)
%sret.cast = bitcast [8 x i64]* %sret to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %sret.cast, i8* %a.cast, i64 64, i32 8, i1 false)
call void @llvm.memset.p0i8.i64(i8* %a.cast, i8 42, i64 32, i32 8, i1 false)
%out.cast = bitcast [8 x i64]* %out to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %out.cast, i8* %a.cast, i64 64, i32 8, i1 false)
- call void @llvm.lifetime.end(i64 64, i8* %a.cast)
+ call void @llvm.lifetime.end.p0i8(i64 64, i8* %a.cast)
ret void
; CHECK-LABEL: @bar(
@@ -48,8 +48,8 @@ entry-block:
; CHECK: ret void
}
-declare void @llvm.lifetime.start(i64, i8* nocapture) nounwind
-declare void @llvm.lifetime.end(i64, i8* nocapture) nounwind
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) nounwind
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) nounwind
declare void @llvm.memcpy.p0i8.p0i8.i64(i8* nocapture, i8* nocapture readonly, i64, i32, i1) nounwind
declare void @llvm.memset.p0i8.i64(i8* nocapture, i8, i64, i32, i1) nounwind
diff --git a/llvm/test/Transforms/MemCpyOpt/memcpy-undef.ll b/llvm/test/Transforms/MemCpyOpt/memcpy-undef.ll
index c75d020c078..06a41829a4e 100644
--- a/llvm/test/Transforms/MemCpyOpt/memcpy-undef.ll
+++ b/llvm/test/Transforms/MemCpyOpt/memcpy-undef.ll
@@ -22,7 +22,7 @@ define i32 @test1(%struct.foo* nocapture %foobie) nounwind noinline ssp uwtable
}
define void @test2(i8* sret noalias nocapture %out, i8* %in) nounwind noinline ssp uwtable {
- call void @llvm.lifetime.start(i64 8, i8* %in)
+ call void @llvm.lifetime.start.p0i8(i64 8, i8* %in)
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %out, i8* %in, i64 8, i32 1, i1 false)
ret void
@@ -32,7 +32,7 @@ define void @test2(i8* sret noalias nocapture %out, i8* %in) nounwind noinline s
}
define void @test3(i8* sret noalias nocapture %out, i8* %in) nounwind noinline ssp uwtable {
- call void @llvm.lifetime.start(i64 4, i8* %in)
+ call void @llvm.lifetime.start.p0i8(i64 4, i8* %in)
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %out, i8* %in, i64 8, i32 1, i1 false)
ret void
@@ -43,4 +43,4 @@ define void @test3(i8* sret noalias nocapture %out, i8* %in) nounwind noinline s
declare void @llvm.memcpy.p0i8.p0i8.i64(i8* nocapture, i8* nocapture, i64, i32, i1) nounwind
-declare void @llvm.lifetime.start(i64, i8* nocapture) nounwind
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) nounwind
diff --git a/llvm/test/Transforms/MemCpyOpt/pr29105.ll b/llvm/test/Transforms/MemCpyOpt/pr29105.ll
index 0d377837226..03b176c4d24 100644
--- a/llvm/test/Transforms/MemCpyOpt/pr29105.ll
+++ b/llvm/test/Transforms/MemCpyOpt/pr29105.ll
@@ -11,25 +11,25 @@ entry-block:
%0 = bitcast [2048 x i64]* %tmp0 to i8*
%tmp2 = alloca %Foo, align 8
%x.sroa.0.0..sroa_cast6 = bitcast [2048 x i64]* %x.sroa.0 to i8*
- call void @llvm.lifetime.start(i64 16384, i8* %x.sroa.0.0..sroa_cast6)
- call void @llvm.lifetime.start(i64 16384, i8* %0)
+ call void @llvm.lifetime.start.p0i8(i64 16384, i8* %x.sroa.0.0..sroa_cast6)
+ call void @llvm.lifetime.start.p0i8(i64 16384, i8* %0)
call void @llvm.memset.p0i8.i64(i8* %0, i8 0, i64 16384, i32 8, i1 false)
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %x.sroa.0.0..sroa_cast6, i8* %0, i64 16384, i32 8, i1 false)
- call void @llvm.lifetime.end(i64 16384, i8* %0)
+ call void @llvm.lifetime.end.p0i8(i64 16384, i8* %0)
%1 = bitcast %Foo* %tmp2 to i8*
- call void @llvm.lifetime.start(i64 16384, i8* %1)
+ call void @llvm.lifetime.start.p0i8(i64 16384, i8* %1)
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %1, i8* %x.sroa.0.0..sroa_cast6, i64 16384, i32 8, i1 false)
call void @bar(%Foo* noalias nocapture nonnull dereferenceable(16384) %tmp2)
- call void @llvm.lifetime.end(i64 16384, i8* %1)
- call void @llvm.lifetime.end(i64 16384, i8* %x.sroa.0.0..sroa_cast6)
+ call void @llvm.lifetime.end.p0i8(i64 16384, i8* %1)
+ call void @llvm.lifetime.end.p0i8(i64 16384, i8* %x.sroa.0.0..sroa_cast6)
ret void
}
-declare void @llvm.lifetime.start(i64, i8* nocapture) #1
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) #1
declare void @llvm.memcpy.p0i8.p0i8.i64(i8* nocapture writeonly, i8* nocapture readonly, i64, i32, i1) #1
-declare void @llvm.lifetime.end(i64, i8* nocapture) #1
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) #1
declare void @bar(%Foo* noalias nocapture readonly dereferenceable(16384)) unnamed_addr #0
diff --git a/llvm/test/Transforms/NewGVN/cond_br2.ll b/llvm/test/Transforms/NewGVN/cond_br2.ll
index e511ff7ed51..ff7a76d1469 100644
--- a/llvm/test/Transforms/NewGVN/cond_br2.ll
+++ b/llvm/test/Transforms/NewGVN/cond_br2.ll
@@ -19,7 +19,7 @@ define void @_Z4testv() #0 personality i8* bitcast (i32 (...)* @__gxx_personalit
entry:
%sv = alloca %"class.llvm::SmallVector", align 16
%0 = bitcast %"class.llvm::SmallVector"* %sv to i8*
- call void @llvm.lifetime.start(i64 64, i8* %0) #1
+ call void @llvm.lifetime.start.p0i8(i64 64, i8* %0) #1
%BeginX.i.i.i.i.i.i = getelementptr inbounds %"class.llvm::SmallVector", %"class.llvm::SmallVector"* %sv, i64 0, i32 0, i32 0, i32 0, i32 0, i32 0
%FirstEl.i.i.i.i.i.i = getelementptr inbounds %"class.llvm::SmallVector", %"class.llvm::SmallVector"* %sv, i64 0, i32 0, i32 0, i32 0, i32 0, i32 3
%1 = bitcast %"union.llvm::SmallVectorBase::U"* %FirstEl.i.i.i.i.i.i to i8*
@@ -95,7 +95,7 @@ if.then.i.i.i20: ; preds = %invoke.cont3
br label %_ZN4llvm11SmallVectorIiLj8EED1Ev.exit21
_ZN4llvm11SmallVectorIiLj8EED1Ev.exit21: ; preds = %invoke.cont3, %if.then.i.i.i20
- call void @llvm.lifetime.end(i64 64, i8* %0) #1
+ call void @llvm.lifetime.end.p0i8(i64 64, i8* %0) #1
ret void
lpad: ; preds = %if.end.i14, %if.end.i, %invoke.cont2
@@ -114,14 +114,14 @@ eh.resume: ; preds = %if.then.i.i.i, %lpa
}
; Function Attrs: nounwind
-declare void @llvm.lifetime.start(i64, i8* nocapture) #1
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) #1
declare i32 @__gxx_personality_v0(...)
declare void @_Z1gRN4llvm11SmallVectorIiLj8EEE(%"class.llvm::SmallVector"*) #2
; Function Attrs: nounwind
-declare void @llvm.lifetime.end(i64, i8* nocapture) #1
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) #1
declare void @_ZN4llvm15SmallVectorBase8grow_podEmm(%"class.llvm::SmallVectorBase"*, i64, i64) #2
diff --git a/llvm/test/Transforms/NewGVN/lifetime-simple.ll b/llvm/test/Transforms/NewGVN/lifetime-simple.ll
index 63e361c49eb..382c7da2b3f 100644
--- a/llvm/test/Transforms/NewGVN/lifetime-simple.ll
+++ b/llvm/test/Transforms/NewGVN/lifetime-simple.ll
@@ -8,13 +8,13 @@ define i8 @test(i8* %P) nounwind {
; CHECK-NOT: load
; CHECK: lifetime.end
entry:
- call void @llvm.lifetime.start(i64 32, i8* %P)
+ call void @llvm.lifetime.start.p0i8(i64 32, i8* %P)
%0 = load i8, i8* %P
store i8 1, i8* %P
- call void @llvm.lifetime.end(i64 32, i8* %P)
+ call void @llvm.lifetime.end.p0i8(i64 32, i8* %P)
%1 = load i8, i8* %P
ret i8 %1
}
-declare void @llvm.lifetime.start(i64 %S, i8* nocapture %P) readonly
-declare void @llvm.lifetime.end(i64 %S, i8* nocapture %P)
+declare void @llvm.lifetime.start.p0i8(i64 %S, i8* nocapture %P) readonly
+declare void @llvm.lifetime.end.p0i8(i64 %S, i8* nocapture %P)
diff --git a/llvm/test/Transforms/SROA/basictest.ll b/llvm/test/Transforms/SROA/basictest.ll
index 70096f37be0..aa00e89ea04 100644
--- a/llvm/test/Transforms/SROA/basictest.ll
+++ b/llvm/test/Transforms/SROA/basictest.ll
@@ -3,8 +3,8 @@
target datalayout = "e-p:64:64:64-p1:16:16:16-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-n8:16:32:64"
-declare void @llvm.lifetime.start(i64, i8* nocapture)
-declare void @llvm.lifetime.end(i64, i8* nocapture)
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture)
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture)
define i32 @test0() {
; CHECK-LABEL: @test0(
@@ -16,22 +16,22 @@ entry:
%a2 = alloca float
%a1.i8 = bitcast i32* %a1 to i8*
- call void @llvm.lifetime.start(i64 4, i8* %a1.i8)
+ call void @llvm.lifetime.start.p0i8(i64 4, i8* %a1.i8)
store i32 0, i32* %a1
%v1 = load i32, i32* %a1
- call void @llvm.lifetime.end(i64 4, i8* %a1.i8)
+ call void @llvm.lifetime.end.p0i8(i64 4, i8* %a1.i8)
%a2.i8 = bitcast float* %a2 to i8*
- call void @llvm.lifetime.start(i64 4, i8* %a2.i8)
+ call void @llvm.lifetime.start.p0i8(i64 4, i8* %a2.i8)
store float 0.0, float* %a2
%v2 = load float , float * %a2
%v2.int = bitcast float %v2 to i32
%sum1 = add i32 %v1, %v2.int
- call void @llvm.lifetime.end(i64 4, i8* %a2.i8)
+ call void @llvm.lifetime.end.p0i8(i64 4, i8* %a2.i8)
ret i32 %sum1
}
@@ -1057,7 +1057,7 @@ define void @PR14059.1(double* %d) {
entry:
%X.sroa.0.i = alloca double, align 8
%0 = bitcast double* %X.sroa.0.i to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %0)
; Store to the low 32-bits...
%X.sroa.0.0.cast2.i = bitcast double* %X.sroa.0.i to i32*
@@ -1084,7 +1084,7 @@ entry:
%accum.real.i = load double, double* %d, align 8
%add.r.i = fadd double %accum.real.i, %X.sroa.0.0.load1.i
store double %add.r.i, double* %d, align 8
- call void @llvm.lifetime.end(i64 -1, i8* %0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %0)
ret void
}
@@ -1652,7 +1652,7 @@ define void @PR25873(%struct.STest* %outData) {
entry:
%tmpData = alloca %struct.STest, align 8
%0 = bitcast %struct.STest* %tmpData to i8*
- call void @llvm.lifetime.start(i64 16, i8* %0)
+ call void @llvm.lifetime.start.p0i8(i64 16, i8* %0)
%x = getelementptr inbounds %struct.STest, %struct.STest* %tmpData, i64 0, i32 0, i32 0
store float 1.230000e+02, float* %x, align 8
%y = getelementptr inbounds %struct.STest, %struct.STest* %tmpData, i64 0, i32 0, i32 1
@@ -1664,7 +1664,7 @@ entry:
store i64 %3, i64* %2, align 8
%4 = bitcast %struct.STest* %outData to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %0, i64 16, i32 4, i1 false)
- call void @llvm.lifetime.end(i64 16, i8* %0)
+ call void @llvm.lifetime.end.p0i8(i64 16, i8* %0)
ret void
}
@@ -1677,10 +1677,10 @@ define void @PR27999() unnamed_addr {
entry-block:
%0 = alloca [2 x i64], align 8
%1 = bitcast [2 x i64]* %0 to i8*
- call void @llvm.lifetime.start(i64 16, i8* %1)
+ call void @llvm.lifetime.start.p0i8(i64 16, i8* %1)
%2 = getelementptr inbounds [2 x i64], [2 x i64]* %0, i32 0, i32 1
%3 = bitcast i64* %2 to i8*
- call void @llvm.lifetime.end(i64 8, i8* %3)
+ call void @llvm.lifetime.end.p0i8(i64 8, i8* %3)
ret void
}
@@ -1692,6 +1692,6 @@ bb1:
%e.7.sroa.6.i = alloca i32, align 1
%e.7.sroa.6.0.load81.i = load i32, i32* %e.7.sroa.6.i, align 1
%0 = bitcast i32* %e.7.sroa.6.i to i8*
- call void @llvm.lifetime.end(i64 2, i8* %0)
+ call void @llvm.lifetime.end.p0i8(i64 2, i8* %0)
ret void
}
diff --git a/llvm/test/Transforms/SROA/pr26972.ll b/llvm/test/Transforms/SROA/pr26972.ll
index a71058c05b9..3140a805fc4 100644
--- a/llvm/test/Transforms/SROA/pr26972.ll
+++ b/llvm/test/Transforms/SROA/pr26972.ll
@@ -10,8 +10,8 @@ target triple = "x86_64-pc-linux"
define void @fn1() {
%a = alloca [1073741825 x i32], align 16
%t0 = bitcast [1073741825 x i32]* %a to i8*
- call void @llvm.lifetime.end(i64 4294967300, i8* %t0)
+ call void @llvm.lifetime.end.p0i8(i64 4294967300, i8* %t0)
ret void
}
-declare void @llvm.lifetime.end(i64, i8* nocapture)
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture)
diff --git a/llvm/test/Transforms/SROA/vector-lifetime-intrinsic.ll b/llvm/test/Transforms/SROA/vector-lifetime-intrinsic.ll
index 37cf394382a..abb5cb2ea33 100644
--- a/llvm/test/Transforms/SROA/vector-lifetime-intrinsic.ll
+++ b/llvm/test/Transforms/SROA/vector-lifetime-intrinsic.ll
@@ -3,10 +3,10 @@
target datalayout = "e-p:64:32-i64:32-v32:32-n32-S64"
; Function Attrs: nounwind
-declare void @llvm.lifetime.start(i64, i8* nocapture) #0
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) #0
; Function Attrs: nounwind
-declare void @llvm.lifetime.end(i64, i8* nocapture) #0
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) #0
; CHECK: @wombat
; CHECK-NOT: alloca
@@ -15,12 +15,12 @@ define void @wombat(<4 x float> %arg1) {
bb:
%tmp = alloca <4 x float>, align 16
%tmp8 = bitcast <4 x float>* %tmp to i8*
- call void @llvm.lifetime.start(i64 16, i8* %tmp8)
+ call void @llvm.lifetime.start.p0i8(i64 16, i8* %tmp8)
store <4 x float> %arg1, <4 x float>* %tmp, align 16
%tmp17 = bitcast <4 x float>* %tmp to <3 x float>*
%tmp18 = load <3 x float>, <3 x float>* %tmp17
%tmp20 = bitcast <4 x float>* %tmp to i8*
- call void @llvm.lifetime.end(i64 16, i8* %tmp20)
+ call void @llvm.lifetime.end.p0i8(i64 16, i8* %tmp20)
call void @wombat3(<3 x float> %tmp18)
ret void
}
diff --git a/llvm/test/Transforms/SafeStack/X86/call.ll b/llvm/test/Transforms/SafeStack/X86/call.ll
index cbac4ce1bb0..2d78bb1a689 100644
--- a/llvm/test/Transforms/SafeStack/X86/call.ll
+++ b/llvm/test/Transforms/SafeStack/X86/call.ll
@@ -159,8 +159,8 @@ define void @call_lifetime(i32* %p) {
entry:
%q = alloca [100 x i8], align 16
%0 = bitcast [100 x i8]* %q to i8*
- call void @llvm.lifetime.start(i64 100, i8* %0)
- call void @llvm.lifetime.end(i64 100, i8* %0)
+ call void @llvm.lifetime.start.p0i8(i64 100, i8* %0)
+ call void @llvm.lifetime.end.p0i8(i64 100, i8* %0)
ret void
}
@@ -174,5 +174,5 @@ declare void @readnone0(i8* nocapture readnone, i8* nocapture)
declare void @llvm.memset.p0i8.i64(i8* nocapture, i8, i64, i32, i1) nounwind argmemonly
-declare void @llvm.lifetime.start(i64, i8* nocapture) nounwind argmemonly
-declare void @llvm.lifetime.end(i64, i8* nocapture) nounwind argmemonly
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) nounwind argmemonly
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) nounwind argmemonly
diff --git a/llvm/test/Transforms/SafeStack/X86/coloring-ssp.ll b/llvm/test/Transforms/SafeStack/X86/coloring-ssp.ll
index d71babe200d..3b04fdf13fb 100644
--- a/llvm/test/Transforms/SafeStack/X86/coloring-ssp.ll
+++ b/llvm/test/Transforms/SafeStack/X86/coloring-ssp.ll
@@ -16,19 +16,19 @@ entry:
%x0 = bitcast i64* %x to i8*
%y0 = bitcast i64* %y to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %x0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %x0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -16
call void @capture64(i64* %x)
- call void @llvm.lifetime.end(i64 -1, i8* %x0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %x0)
- call void @llvm.lifetime.start(i64 -1, i8* %y0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %y0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -16
call void @capture64(i64* %y)
- call void @llvm.lifetime.end(i64 -1, i8* %y0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %y0)
ret void
}
-declare void @llvm.lifetime.start(i64, i8* nocapture)
-declare void @llvm.lifetime.end(i64, i8* nocapture)
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture)
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture)
declare void @capture64(i64*)
diff --git a/llvm/test/Transforms/SafeStack/X86/coloring.ll b/llvm/test/Transforms/SafeStack/X86/coloring.ll
index 3ed9ccb43f3..76bdf37dbf4 100644
--- a/llvm/test/Transforms/SafeStack/X86/coloring.ll
+++ b/llvm/test/Transforms/SafeStack/X86/coloring.ll
@@ -10,35 +10,35 @@ entry:
%x1 = alloca i32, align 4
%x2 = alloca i32, align 4
%0 = bitcast i32* %x to i8*
- call void @llvm.lifetime.start(i64 4, i8* %0)
+ call void @llvm.lifetime.start.p0i8(i64 4, i8* %0)
; CHECK: %[[A1:.*]] = getelementptr i8, i8* %[[USP]], i32 -4
; CHECK: %[[A2:.*]] = bitcast i8* %[[A1]] to i32*
; CHECK: call void @capture(i32* nonnull %[[A2]])
call void @capture(i32* nonnull %x)
- call void @llvm.lifetime.end(i64 4, i8* %0)
+ call void @llvm.lifetime.end.p0i8(i64 4, i8* %0)
%1 = bitcast i32* %x1 to i8*
- call void @llvm.lifetime.start(i64 4, i8* %1)
+ call void @llvm.lifetime.start.p0i8(i64 4, i8* %1)
; CHECK: %[[B1:.*]] = getelementptr i8, i8* %[[USP]], i32 -4
; CHECK: %[[B2:.*]] = bitcast i8* %[[B1]] to i32*
; CHECK: call void @capture(i32* nonnull %[[B2]])
call void @capture(i32* nonnull %x1)
- call void @llvm.lifetime.end(i64 4, i8* %1)
+ call void @llvm.lifetime.end.p0i8(i64 4, i8* %1)
%2 = bitcast i32* %x2 to i8*
- call void @llvm.lifetime.start(i64 4, i8* %2)
+ call void @llvm.lifetime.start.p0i8(i64 4, i8* %2)
; CHECK: %[[C1:.*]] = getelementptr i8, i8* %[[USP]], i32 -4
; CHECK: %[[C2:.*]] = bitcast i8* %[[C1]] to i32*
; CHECK: call void @capture(i32* nonnull %[[C2]])
call void @capture(i32* nonnull %x2)
- call void @llvm.lifetime.end(i64 4, i8* %2)
+ call void @llvm.lifetime.end.p0i8(i64 4, i8* %2)
ret void
}
-declare void @llvm.lifetime.start(i64, i8* nocapture)
-declare void @llvm.lifetime.end(i64, i8* nocapture)
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture)
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture)
declare void @capture(i32*)
diff --git a/llvm/test/Transforms/SafeStack/X86/coloring2.ll b/llvm/test/Transforms/SafeStack/X86/coloring2.ll
index f3ac6d735c9..2a8f871945f 100644
--- a/llvm/test/Transforms/SafeStack/X86/coloring2.ll
+++ b/llvm/test/Transforms/SafeStack/X86/coloring2.ll
@@ -15,21 +15,21 @@ entry:
%y0 = bitcast i32* %y to i8*
%z0 = bitcast i32* %z to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %z0)
- call void @llvm.lifetime.start(i64 -1, i8* %x0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %z0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %x0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -4
call void @capture32(i32* %x)
- call void @llvm.lifetime.end(i64 -1, i8* %x0)
- call void @llvm.lifetime.start(i64 -1, i8* %y0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %x0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %y0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -4
call void @capture32(i32* %y)
- call void @llvm.lifetime.end(i64 -1, i8* %y0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %y0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -8
call void @capture32(i32* %z)
- call void @llvm.lifetime.end(i64 -1, i8* %z0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %z0)
ret void
}
@@ -44,11 +44,11 @@ entry:
%y = alloca i32, align 4
%x0 = bitcast i32* %x to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %x0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %x0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -4
call void @capture32(i32* %x)
- call void @llvm.lifetime.end(i64 -1, i8* %x0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %x0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -8
call void @capture32(i32* %y)
@@ -70,21 +70,21 @@ entry:
%y0 = bitcast i32* %y to i8*
%z0 = bitcast i64* %z to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %x0)
- call void @llvm.lifetime.start(i64 -1, i8* %y0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %x0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %y0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -4
call void @capture32(i32* %x)
- call void @llvm.lifetime.end(i64 -1, i8* %x0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %x0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -8
call void @capture32(i32* %y)
- call void @llvm.lifetime.end(i64 -1, i8* %y0)
- call void @llvm.lifetime.start(i64 -1, i8* %z0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %y0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %z0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -8
call void @capture64(i64* %z)
- call void @llvm.lifetime.end(i64 -1, i8* %z0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %z0)
ret void
}
@@ -103,9 +103,9 @@ entry:
%y0 = bitcast i32* %y to i8*
%z0 = bitcast i64* %z to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %x0)
- call void @llvm.lifetime.start(i64 -1, i8* %y0)
- call void @llvm.lifetime.start(i64 -1, i8* %z0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %x0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %y0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %z0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -16
call void @capture32(i32* %x)
@@ -116,9 +116,9 @@ entry:
; CHECK: getelementptr i8, i8* %[[USP]], i32 -8
call void @capture64(i64* %z)
- call void @llvm.lifetime.end(i64 -1, i8* %x0)
- call void @llvm.lifetime.end(i64 -1, i8* %y0)
- call void @llvm.lifetime.end(i64 -1, i8* %z0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %x0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %y0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %z0)
ret void
}
@@ -156,9 +156,9 @@ entry:
%z1 = alloca i64, align 8
%z2 = alloca i64, align 8
%0 = bitcast i64* %x1 to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %0)
%1 = bitcast i64* %x2 to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %1)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %1)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -8
; CHECK: call void @capture64(
call void @capture64(i64* nonnull %x1)
@@ -169,7 +169,7 @@ entry:
if.then: ; preds = %entry
%2 = bitcast i64* %y to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %2)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %2)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -24
; CHECK: call void @capture64(
call void @capture64(i64* nonnull %y)
@@ -177,29 +177,29 @@ if.then: ; preds = %entry
if.then3: ; preds = %if.then
%3 = bitcast i64* %y1 to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %3)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %3)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -32
; CHECK: call void @capture64(
call void @capture64(i64* nonnull %y1)
- call void @llvm.lifetime.end(i64 -1, i8* %3)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %3)
br label %if.end
if.else: ; preds = %if.then
%4 = bitcast i64* %y2 to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %4)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %4)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -32
; CHECK: call void @capture64(
call void @capture64(i64* nonnull %y2)
- call void @llvm.lifetime.end(i64 -1, i8* %4)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %4)
br label %if.end
if.end: ; preds = %if.else, %if.then3
- call void @llvm.lifetime.end(i64 -1, i8* %2)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %2)
br label %if.end9
if.else4: ; preds = %entry
%5 = bitcast i64* %z to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %5)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %5)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -24
; CHECK: call void @capture64(
call void @capture64(i64* nonnull %z)
@@ -207,29 +207,29 @@ if.else4: ; preds = %entry
if.then6: ; preds = %if.else4
%6 = bitcast i64* %z1 to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %6)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %6)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -32
; CHECK: call void @capture64(
call void @capture64(i64* nonnull %z1)
- call void @llvm.lifetime.end(i64 -1, i8* %6)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %6)
br label %if.end8
if.else7: ; preds = %if.else4
%7 = bitcast i64* %z2 to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %7)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %7)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -32
; CHECK: call void @capture64(
call void @capture64(i64* nonnull %z2)
- call void @llvm.lifetime.end(i64 -1, i8* %7)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %7)
br label %if.end8
if.end8: ; preds = %if.else7, %if.then6
- call void @llvm.lifetime.end(i64 -1, i8* %5)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %5)
br label %if.end9
if.end9: ; preds = %if.end8, %if.end
- call void @llvm.lifetime.end(i64 -1, i8* %1)
- call void @llvm.lifetime.end(i64 -1, i8* %0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %1)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %0)
ret void
}
@@ -243,21 +243,21 @@ entry:
%y = alloca i32, align 4
%x0 = bitcast i32* %x to i8*
%y0 = bitcast i32* %y to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %x0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %x0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -4
; CHECK: call void @capture32(
call void @capture32(i32* %x)
br i1 %d, label %bb2, label %bb3
bb2:
- call void @llvm.lifetime.start(i64 -1, i8* %y0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %y0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -8
; CHECK: call void @capture32(
call void @capture32(i32* %y)
- call void @llvm.lifetime.end(i64 -1, i8* %y0)
- call void @llvm.lifetime.end(i64 -1, i8* %x0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %y0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %x0)
ret void
bb3:
- call void @llvm.lifetime.end(i64 -1, i8* %x0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %x0)
ret void
}
@@ -270,18 +270,18 @@ entry:
%y = alloca i32, align 4
%x0 = bitcast i32* %x to i8*
%y0 = bitcast i32* %y to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %x0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %x0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -4
; CHECK: call void @capture32(
call void @capture32(i32* %x)
- call void @llvm.lifetime.end(i64 -1, i8* %x0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %x0)
br i1 %d, label %bb2, label %bb3
bb2:
- call void @llvm.lifetime.start(i64 -1, i8* %y0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %y0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -4
; CHECK: call void @capture32(
call void @capture32(i32* %y)
- call void @llvm.lifetime.end(i64 -1, i8* %y0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %y0)
ret void
bb3:
ret void
@@ -297,14 +297,14 @@ entry:
%y = alloca i32, align 4
%x0 = bitcast i32* %x to i8*
%y0 = bitcast i32* %y to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %x0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %x0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -4
; CHECK: call void @capture32(
call void @capture32(i32* %x)
- call void @llvm.lifetime.end(i64 -1, i8* %x0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %x0)
br i1 %d, label %bb2, label %bb3
bb2:
- call void @llvm.lifetime.start(i64 -1, i8* %y0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %y0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -4
; CHECK: call void @capture32(
call void @capture32(i32* %y)
@@ -323,14 +323,14 @@ entry:
%y = alloca i32, align 4
%x0 = bitcast i32* %x to i8*
%y0 = bitcast i32* %y to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %x0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %x0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -4
; CHECK: call void @capture32(
call void @capture32(i32* %x)
br i1 %d, label %bb2, label %bb3
bb2:
- call void @llvm.lifetime.end(i64 -1, i8* %x0)
- call void @llvm.lifetime.start(i64 -1, i8* %y0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %x0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %y0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -4
; CHECK: call void @capture32(
call void @capture32(i32* %y)
@@ -352,10 +352,10 @@ entry:
; CHECK: getelementptr i8, i8* %[[USP]], i32 -4
; CHECK: call void @capture32(
call void @capture32(i32* %x)
- call void @llvm.lifetime.end(i64 -1, i8* %x0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %x0)
br i1 %d, label %bb2, label %bb3
bb2:
- call void @llvm.lifetime.start(i64 -1, i8* %y0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %y0)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -8
; CHECK: call void @capture32(
call void @capture32(i32* %y)
@@ -374,29 +374,29 @@ entry:
%A.i = alloca [100 x i32], align 4
%B.i = alloca [100 x i32], align 4
%0 = bitcast [100 x i32]* %A.i to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %0)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %0)
%1 = bitcast [100 x i32]* %B.i to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %1)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %1)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -400
; CHECK: call void @capture100x32(
call void @capture100x32([100 x i32]* %A.i)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -800
; CHECK: call void @capture100x32(
call void @capture100x32([100 x i32]* %B.i)
- call void @llvm.lifetime.end(i64 -1, i8* %0)
- call void @llvm.lifetime.end(i64 -1, i8* %1)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %0)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %1)
%2 = bitcast [100 x i32]* %A.i1 to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %2)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %2)
%3 = bitcast [100 x i32]* %B.i2 to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %3)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %3)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -400
; CHECK: call void @capture100x32(
call void @capture100x32([100 x i32]* %A.i1)
; CHECK: getelementptr i8, i8* %[[USP]], i32 -800
; CHECK: call void @capture100x32(
call void @capture100x32([100 x i32]* %B.i2)
- call void @llvm.lifetime.end(i64 -1, i8* %2)
- call void @llvm.lifetime.end(i64 -1, i8* %3)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %2)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %3)
ret void
}
@@ -408,11 +408,11 @@ entry:
%buf1 = alloca i8, i32 100000, align 16
%buf2 = alloca i8, i32 100000, align 16
- call void @llvm.lifetime.start(i64 -1, i8* %buf1)
- call void @llvm.lifetime.end(i64 -1, i8* %buf1)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %buf1)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %buf1)
- call void @llvm.lifetime.start(i64 -1, i8* %buf1)
- call void @llvm.lifetime.start(i64 -1, i8* %buf2)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %buf1)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %buf2)
call void @capture8(i8* %buf1)
call void @capture8(i8* %buf2)
ret void
@@ -435,13 +435,13 @@ entry:
%A.i = alloca [100 x i32], align 4
%B.i = alloca [100 x i32], align 4
%0 = bitcast [100 x i32]* %A.i to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %0) nounwind
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %0) nounwind
%1 = bitcast [100 x i32]* %B.i to i8*
- call void @llvm.lifetime.start(i64 -1, i8* %1) nounwind
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %1) nounwind
call void @capture100x32([100 x i32]* %A.i)
call void @capture100x32([100 x i32]* %B.i)
- call void @llvm.lifetime.end(i64 -1, i8* %0) nounwind
- call void @llvm.lifetime.end(i64 -1, i8* %1) nounwind
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %0) nounwind
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %1) nounwind
br label %block2
block2:
@@ -464,13 +464,13 @@ entry:
%b8 = bitcast [4 x %struct.Klass]* %b.i to i8*
; I am used outside the lifetime zone below:
%z2 = getelementptr inbounds [4 x %struct.Klass], [4 x %struct.Klass]* %a.i, i64 0, i64 0, i32 0
- call void @llvm.lifetime.start(i64 -1, i8* %a8)
- call void @llvm.lifetime.start(i64 -1, i8* %b8)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %a8)
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %b8)
call void @capture8(i8* %a8)
call void @capture8(i8* %b8)
%z3 = load i32, i32* %z2, align 16
- call void @llvm.lifetime.end(i64 -1, i8* %a8)
- call void @llvm.lifetime.end(i64 -1, i8* %b8)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %a8)
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %b8)
ret i32 %z3
}
@@ -480,12 +480,12 @@ entry:
; CHECK: %[[USP:.*]] = load i8*, i8** @__safestack_unsafe_stack_ptr
; CHECK-NEXT: getelementptr i8, i8* %[[USP]], i32 -16
%x = alloca i8, align 4
- call void @llvm.lifetime.start(i64 4, i8* %x) nounwind
+ call void @llvm.lifetime.start.p0i8(i64 4, i8* %x) nounwind
br label %l2
l2:
call void @capture8(i8* %x)
- call void @llvm.lifetime.end(i64 4, i8* %x) nounwind
+ call void @llvm.lifetime.end.p0i8(i64 4, i8* %x) nounwind
br label %l2
}
@@ -498,23 +498,23 @@ entry:
; CHECK-NEXT: getelementptr i8, i8* %[[USP]], i32 -16
%x = alloca i8, align 4
%y = alloca i8, align 4
- call void @llvm.lifetime.start(i64 4, i8* %x) nounwind
+ call void @llvm.lifetime.start.p0i8(i64 4, i8* %x) nounwind
br label %l2
l2:
; CHECK: getelementptr i8, i8* %[[USP]], i32 -8
- call void @llvm.lifetime.start(i64 4, i8* %y) nounwind
+ call void @llvm.lifetime.start.p0i8(i64 4, i8* %y) nounwind
call void @capture8(i8* %y)
- call void @llvm.lifetime.end(i64 4, i8* %y) nounwind
+ call void @llvm.lifetime.end.p0i8(i64 4, i8* %y) nounwind
; CHECK: getelementptr i8, i8* %[[USP]], i32 -4
- call void @llvm.lifetime.start(i64 4, i8* %x) nounwind
+ call void @llvm.lifetime.start.p0i8(i64 4, i8* %x) nounwind
call void @capture8(i8* %x)
br label %l2
}
-declare void @llvm.lifetime.start(i64, i8* nocapture)
-declare void @llvm.lifetime.end(i64, i8* nocapture)
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture)
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture)
declare void @capture8(i8*)
declare void @capture32(i32*)
declare void @capture64(i64*)
diff --git a/llvm/test/Transforms/SafeStack/X86/debug-loc2.ll b/llvm/test/Transforms/SafeStack/X86/debug-loc2.ll
index 35e9b7711d2..8059a722fd4 100644
--- a/llvm/test/Transforms/SafeStack/X86/debug-loc2.ll
+++ b/llvm/test/Transforms/SafeStack/X86/debug-loc2.ll
@@ -40,12 +40,12 @@ entry:
}
; Function Attrs: argmemonly nounwind
-declare void @llvm.lifetime.start(i64, i8* nocapture) #1
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) #1
declare void @capture(i32*) #2
; Function Attrs: argmemonly nounwind
-declare void @llvm.lifetime.end(i64, i8* nocapture) #1
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) #1
; Function Attrs: nounwind readnone
declare void @llvm.dbg.value(metadata, i64, metadata, metadata) #3
diff --git a/llvm/test/Transforms/SafeStack/X86/layout-frag.ll b/llvm/test/Transforms/SafeStack/X86/layout-frag.ll
index 125eb0f8be9..b127defc2c5 100644
--- a/llvm/test/Transforms/SafeStack/X86/layout-frag.ll
+++ b/llvm/test/Transforms/SafeStack/X86/layout-frag.ll
@@ -14,16 +14,16 @@ entry:
%x0a = bitcast i64* %x0 to i8*
%x2a = bitcast i64* %x2 to i8*
- call void @llvm.lifetime.start(i64 4, i8* %x0a)
+ call void @llvm.lifetime.start.p0i8(i64 4, i8* %x0a)
call void @capture64(i64* %x0)
- call void @llvm.lifetime.end(i64 4, i8* %x0a)
+ call void @llvm.lifetime.end.p0i8(i64 4, i8* %x0a)
- call void @llvm.lifetime.start(i64 4, i8* %x1)
- call void @llvm.lifetime.start(i64 4, i8* %x2a)
+ call void @llvm.lifetime.start.p0i8(i64 4, i8* %x1)
+ call void @llvm.lifetime.start.p0i8(i64 4, i8* %x2a)
call void @capture8(i8* %x1)
call void @capture64(i64* %x2)
- call void @llvm.lifetime.end(i64 4, i8* %x1)
- call void @llvm.lifetime.end(i64 4, i8* %x2a)
+ call void @llvm.lifetime.end.p0i8(i64 4, i8* %x1)
+ call void @llvm.lifetime.end.p0i8(i64 4, i8* %x2a)
; Test that i64 allocas share space.
; CHECK: getelementptr i8, i8* %unsafe_stack_ptr, i32 -8
@@ -33,7 +33,7 @@ entry:
ret void
}
-declare void @llvm.lifetime.start(i64, i8* nocapture)
-declare void @llvm.lifetime.end(i64, i8* nocapture)
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture)
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture)
declare void @capture8(i8*)
declare void @capture64(i64*)
diff --git a/llvm/test/Transforms/SampleProfile/remarks.ll b/llvm/test/Transforms/SampleProfile/remarks.ll
index 908e4f8b10b..4be043e8268 100644
--- a/llvm/test/Transforms/SampleProfile/remarks.ll
+++ b/llvm/test/Transforms/SampleProfile/remarks.ll
@@ -33,11 +33,11 @@ entry:
%sum = alloca i64, align 8
%i = alloca i32, align 4
%0 = bitcast i64* %sum to i8*, !dbg !19
- call void @llvm.lifetime.start(i64 8, i8* %0) #4, !dbg !19
+ call void @llvm.lifetime.start.p0i8(i64 8, i8* %0) #4, !dbg !19
call void @llvm.dbg.declare(metadata i64* %sum, metadata !9, metadata !20), !dbg !21
store i64 0, i64* %sum, align 8, !dbg !21, !tbaa !22
%1 = bitcast i32* %i to i8*, !dbg !26
- call void @llvm.lifetime.start(i64 4, i8* %1) #4, !dbg !26
+ call void @llvm.lifetime.start.p0i8(i64 4, i8* %1) #4, !dbg !26
call void @llvm.dbg.declare(metadata i32* %i, metadata !10, metadata !20), !dbg !27
store i32 0, i32* %i, align 4, !dbg !27, !tbaa !28
br label %for.cond, !dbg !26
@@ -49,7 +49,7 @@ for.cond: ; preds = %for.inc, %entry
for.cond.cleanup: ; preds = %for.cond
%3 = bitcast i32* %i to i8*, !dbg !36
- call void @llvm.lifetime.end(i64 4, i8* %3) #4, !dbg !36
+ call void @llvm.lifetime.end.p0i8(i64 4, i8* %3) #4, !dbg !36
br label %for.end
for.body: ; preds = %for.cond
@@ -88,12 +88,12 @@ for.inc: ; preds = %if.end
for.end: ; preds = %for.cond.cleanup
%10 = load i64, i64* %sum, align 8, !dbg !53, !tbaa !22
%11 = bitcast i64* %sum to i8*, !dbg !54
- call void @llvm.lifetime.end(i64 8, i8* %11) #4, !dbg !54
+ call void @llvm.lifetime.end.p0i8(i64 8, i8* %11) #4, !dbg !54
ret i64 %10, !dbg !55
}
; Function Attrs: nounwind argmemonly
-declare void @llvm.lifetime.start(i64, i8* nocapture) #1
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) #1
; Function Attrs: nounwind readnone
declare void @llvm.dbg.declare(metadata, metadata, metadata) #2
@@ -102,7 +102,7 @@ declare void @llvm.dbg.declare(metadata, metadata, metadata) #2
declare i32 @rand() #3
; Function Attrs: nounwind argmemonly
-declare void @llvm.lifetime.end(i64, i8* nocapture) #1
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) #1
; Function Attrs: nounwind uwtable
define i32 @main() #0 !dbg !13 {
diff --git a/llvm/test/Transforms/SimplifyCFG/critedge-assume.ll b/llvm/test/Transforms/SimplifyCFG/critedge-assume.ll
index db24685a37b..bfeb65769de 100644
--- a/llvm/test/Transforms/SimplifyCFG/critedge-assume.ll
+++ b/llvm/test/Transforms/SimplifyCFG/critedge-assume.ll
@@ -58,7 +58,7 @@ while.end:
ret void
}
-declare void @llvm.lifetime.start(i64, i8* nocapture)
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture)
declare i32 @_ZNK1F5beginEv(%class.F*)
@@ -70,7 +70,7 @@ declare noalias nonnull i8* @_Znwm(i64)
declare void @_ZN1B6appendEv(%class.B*)
-declare void @llvm.lifetime.end(i64, i8* nocapture)
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture)
declare i1 @llvm.type.test(i8*, metadata)
diff --git a/llvm/test/Transforms/SimplifyCFG/empty-cleanuppad.ll b/llvm/test/Transforms/SimplifyCFG/empty-cleanuppad.ll
index 9f657a81a05..f2e0114a2a3 100644
--- a/llvm/test/Transforms/SimplifyCFG/empty-cleanuppad.ll
+++ b/llvm/test/Transforms/SimplifyCFG/empty-cleanuppad.ll
@@ -413,14 +413,14 @@ return: ; preds = %invoke.cont, %catch
define i32 @f9() personality i32 (...)* @__CxxFrameHandler3 {
entry:
%s = alloca i8, align 1
- call void @llvm.lifetime.start(i64 1, i8* nonnull %s)
+ call void @llvm.lifetime.start.p0i8(i64 1, i8* nonnull %s)
%bc = bitcast i8* %s to %struct.S2*
invoke void @"\01??1S2@@QEAA@XZ"(%struct.S2* %bc)
to label %try.cont unwind label %ehcleanup
ehcleanup:
%cleanup.pad = cleanuppad within none []
- call void @llvm.lifetime.end(i64 1, i8* nonnull %s)
+ call void @llvm.lifetime.end.p0i8(i64 1, i8* nonnull %s)
cleanupret from %cleanup.pad unwind label %catch.dispatch
catch.dispatch:
@@ -466,5 +466,5 @@ declare void @use_x(i32 %x)
declare i32 @__CxxFrameHandler3(...)
-declare void @llvm.lifetime.start(i64, i8* nocapture)
-declare void @llvm.lifetime.end(i64, i8* nocapture)
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture)
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture)
diff --git a/llvm/test/Transforms/SimplifyCFG/lifetime.ll b/llvm/test/Transforms/SimplifyCFG/lifetime.ll
index 7c66be52950..270fe4d5442 100644
--- a/llvm/test/Transforms/SimplifyCFG/lifetime.ll
+++ b/llvm/test/Transforms/SimplifyCFG/lifetime.ll
@@ -10,11 +10,11 @@
define void @foo(i1 %x) {
entry:
%a = alloca i8
- call void @llvm.lifetime.start(i64 -1, i8* %a) nounwind
+ call void @llvm.lifetime.start.p0i8(i64 -1, i8* %a) nounwind
br i1 %x, label %bb0, label %bb1
bb0:
- call void @llvm.lifetime.end(i64 -1, i8* %a) nounwind
+ call void @llvm.lifetime.end.p0i8(i64 -1, i8* %a) nounwind
br label %bb1
bb1:
@@ -24,6 +24,6 @@ bb1:
declare void @f()
-declare void @llvm.lifetime.start(i64, i8* nocapture) nounwind
+declare void @llvm.lifetime.start.p0i8(i64, i8* nocapture) nounwind
-declare void @llvm.lifetime.end(i64, i8* nocapture) nounwind
+declare void @llvm.lifetime.end.p0i8(i64, i8* nocapture) nounwind
diff --git a/llvm/test/Transforms/Util/MemorySSA/lifetime-simple.ll b/llvm/test/Transforms/Util/MemorySSA/lifetime-simple.ll
index 99406b21048..f1db15cc577 100644
--- a/llvm/test/Transforms/Util/MemorySSA/lifetime-simple.ll
+++ b/llvm/test/Transforms/Util/MemorySSA/lifetime-simple.ll
@@ -7,8 +7,8 @@
define i8 @test(i8* %P, i8* %Q) {
entry:
; CHECK: 1 = MemoryDef(liveOnEntry)
-; CHECK-NEXT: call void @llvm.lifetime.start(i64 32, i8* %P)
- call void @llvm.lifetime.start(i64 32, i8* %P)
+; CHECK-NEXT: call void @llvm.lifetime.start.p0i8(i64 32, i8* %P)
+ call void @llvm.lifetime.start.p0i8(i64 32, i8* %P)
; CHECK: MemoryUse(1)
; CHECK-NEXT: %0 = load i8, i8* %P
%0 = load i8, i8* %P
@@ -16,8 +16,8 @@ entry:
; CHECK-NEXT: store i8 1, i8* %P
store i8 1, i8* %P
; CHECK: 3 = MemoryDef(2)
-; CHECK-NEXT: call void @llvm.lifetime.end(i64 32, i8* %P)
- call void @llvm.lifetime.end(i64 32, i8* %P)
+; CHECK-NEXT: call void @llvm.lifetime.end.p0i8(i64 32, i8* %P)
+ call void @llvm.lifetime.end.p0i8(i64 32, i8* %P)
; CHECK: MemoryUse(liveOnEntry)
; CHECK-NEXT: %1 = load i8, i8* %P
%1 = load i8, i8* %P
@@ -26,5 +26,5 @@ entry:
%2 = load i8, i8* %Q
ret i8 %1
}
-declare void @llvm.lifetime.start(i64 %S, i8* nocapture %P) readonly
-declare void @llvm.lifetime.end(i64 %S, i8* nocapture %P)
+declare void @llvm.lifetime.start.p0i8(i64 %S, i8* nocapture %P) readonly
+declare void @llvm.lifetime.end.p0i8(i64 %S, i8* nocapture %P)
OpenPOWER on IntegriCloud