Mercurial > hg > CbC > CbC_llvm
comparison clang/test/CodeGenObjCXX/inheriting-constructor-cleanup.mm @ 236:c4bab56944e8 llvm-original
LLVM 16
author | kono |
---|---|
date | Wed, 09 Nov 2022 17:45:10 +0900 |
parents | 79ff65ed7e25 |
children | 1f2b6ac9f198 |
comparison
equal
deleted
inserted
replaced
232:70dce7da266c | 236:c4bab56944e8 |
---|---|
1 // RUN: %clang_cc1 -triple x86_64-darwin -std=c++11 -fobjc-arc -emit-llvm -o - %s | FileCheck %s --implicit-check-not "call\ " | 1 // RUN: %clang_cc1 -no-opaque-pointers -triple x86_64-darwin -std=c++11 -fobjc-arc -emit-llvm -o - %s | FileCheck %s --implicit-check-not "call\ " |
2 // rdar://problem/45805151 | 2 // rdar://problem/45805151 |
3 | 3 |
4 struct Strong { | 4 struct Strong { |
5 __strong id x; | 5 __strong id x; |
6 }; | 6 }; |
20 id g(void); | 20 id g(void); |
21 void f() { | 21 void f() { |
22 Inheritor({g()}); | 22 Inheritor({g()}); |
23 } | 23 } |
24 // CHECK-LABEL: define{{.*}} void @_Z1fv | 24 // CHECK-LABEL: define{{.*}} void @_Z1fv |
25 // CHECK: %[[TMP:.*]] = call i8* @_Z1gv() | 25 // CHECK: %[[TMP:.*]] = call noundef i8* @_Z1gv() |
26 // CHECK: {{.*}} = notail call i8* @llvm.objc.retainAutoreleasedReturnValue(i8* %[[TMP]]) | 26 // CHECK: {{.*}} = notail call i8* @llvm.objc.retainAutoreleasedReturnValue(i8* %[[TMP]]) |
27 // CHECK: call void (%struct.Base*, i8*, ...) @_ZN4BaseC2E6Strongz(%struct.Base* {{.*}}, i8* {{.*}}) | 27 // CHECK: call void (%struct.Base*, i8*, ...) @_ZN4BaseC2E6Strongz(%struct.Base* {{.*}}, i8* {{.*}}) |
28 // CHECK-NEXT: call void @_ZN9InheritorD1Ev(%struct.Inheritor* {{.*}}) | 28 // CHECK-NEXT: call void @_ZN9InheritorD1Ev(%struct.Inheritor* {{.*}}) |
29 | 29 |
30 // CHECK-LABEL: define linkonce_odr void @_ZN4BaseC2E6Strongz(%struct.Base* {{.*}}, i8* {{.*}}, ...) | 30 // CHECK-LABEL: define linkonce_odr void @_ZN4BaseC2E6Strongz(%struct.Base* {{.*}}, i8* {{.*}}, ...) |