diff options
| author | Arnaud A. de Grandmaison <arnaud.degrandmaison@arm.com> | 2014-10-08 12:49:16 +0000 |
|---|---|---|
| committer | Arnaud A. de Grandmaison <arnaud.degrandmaison@arm.com> | 2014-10-08 12:49:16 +0000 |
| commit | 1b175e40986a9c420b0a06940776ed2e615ca6dd (patch) | |
| tree | 14be23b9f0b3fec474d7e5903e03c70dd81129b9 /clang/test/CodeGenCXX/destructors.cpp | |
| parent | ff7456dd34e20696334f9e8dacc533265441eaf4 (diff) | |
| download | bcm5719-llvm-1b175e40986a9c420b0a06940776ed2e615ca6dd.tar.gz bcm5719-llvm-1b175e40986a9c420b0a06940776ed2e615ca6dd.zip | |
Remove threshold on object size for inserting lifetime begin / end
Boostrapping LLVM+Clang+LLDB without threshold on object size for
lifetime markers insertion has shown there was no significant change
in compile time, so let the stack slot colorizer do its optimization
for all slots.
llvm-svn: 219303
Diffstat (limited to 'clang/test/CodeGenCXX/destructors.cpp')
| -rw-r--r-- | clang/test/CodeGenCXX/destructors.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/clang/test/CodeGenCXX/destructors.cpp b/clang/test/CodeGenCXX/destructors.cpp index bc9a683be5d..ac2a30ea5c0 100644 --- a/clang/test/CodeGenCXX/destructors.cpp +++ b/clang/test/CodeGenCXX/destructors.cpp @@ -280,6 +280,8 @@ namespace test5 { // CHECK5: [[ELEMS:%.*]] = alloca [5 x [[A:%.*]]], align // CHECK5-NEXT: [[EXN:%.*]] = alloca i8* // CHECK5-NEXT: [[SEL:%.*]] = alloca i32 + // CHECK5-NEXT: [[PELEMS:%.*]] = bitcast [5 x [[A]]]* [[ELEMS]] to i8* + // CHECK5-NEXT: call void @llvm.lifetime.start(i64 5, i8* [[PELEMS]]) // CHECK5-NEXT: [[BEGIN:%.*]] = getelementptr inbounds [5 x [[A]]]* [[ELEMS]], i32 0, i32 0 // CHECK5-NEXT: [[END:%.*]] = getelementptr inbounds [[A]]* [[BEGIN]], i64 5 // CHECK5-NEXT: br label @@ -288,7 +290,8 @@ namespace test5 { // CHECK5-NEXT: invoke void @_ZN5test51AD1Ev([[A]]* [[ELT]]) // CHECK5: [[T0:%.*]] = icmp eq [[A]]* [[ELT]], [[BEGIN]] // CHECK5-NEXT: br i1 [[T0]], - // CHECK5: ret void + // CHECK5: call void @llvm.lifetime.end + // CHECK5-NEXT: ret void // lpad // CHECK5: [[EMPTY:%.*]] = icmp eq [[A]]* [[BEGIN]], [[ELT]] // CHECK5-NEXT: br i1 [[EMPTY]] @@ -405,7 +408,9 @@ namespace test9 { f1<int>(); f2(); } - // CHECK5: call void @_ZN5test97ArgTypeD1Ev(%"struct.test9::ArgType"* % + + // CHECK5-LABEL: define void @_ZN5test93barEv( + // CHECK5: invoke void @_ZN5test97ArgTypeD1Ev(%"struct.test9::ArgType"* % // CHECK5: call void @_ZN5test92f2Ev() } |

