diff options
| author | Chris Lattner <sabre@nondot.org> | 2011-07-10 03:47:27 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2011-07-10 03:47:27 +0000 |
| commit | d1f1158203fb5f715c9e51c9adaca0f3838345cb (patch) | |
| tree | f5e659ad8400a40219814501d224f829ffdb2cdb /clang/test/CodeGenObjCXX | |
| parent | 1a5f8978e98759d47a69d03de67d9c516ce11f82 (diff) | |
| download | bcm5719-llvm-d1f1158203fb5f715c9e51c9adaca0f3838345cb.tar.gz bcm5719-llvm-d1f1158203fb5f715c9e51c9adaca0f3838345cb.zip | |
Fix the clang bootstrap and Jay's testcase from llvm-dev by being completely
conservative when converting a functiontype to IR when in a "pointer within
a struct" context. This has the unfortunate sideeffect of compiling all
function pointers inside of structs into "{}*" which, though correct, is
ugly. This has the positive side effect of being correct, and it is pretty
straight-forward to improve on this.
llvm-svn: 134861
Diffstat (limited to 'clang/test/CodeGenObjCXX')
| -rw-r--r-- | clang/test/CodeGenObjCXX/arc-special-member-functions.mm | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/clang/test/CodeGenObjCXX/arc-special-member-functions.mm b/clang/test/CodeGenObjCXX/arc-special-member-functions.mm index 598dd406107..14e0899cd49 100644 --- a/clang/test/CodeGenObjCXX/arc-special-member-functions.mm +++ b/clang/test/CodeGenObjCXX/arc-special-member-functions.mm @@ -94,9 +94,9 @@ void test_ObjCBlockMember_copy_assign(ObjCBlockMember m1, ObjCBlockMember m2) { // CHECK: define linkonce_odr {{%.*}}* @_ZN15ObjCBlockMemberaSERKS_( // CHECK: [[T0:%.*]] = call i8* @objc_retainBlock( // CHECK-NEXT: [[T1:%.*]] = bitcast i8* [[T0]] to i32 (i32)* -// CHECK-NEXT: [[T2:%.*]] = load i32 (i32)** [[SLOT:%.*]], -// CHECK-NEXT: store i32 (i32)* [[T1]], i32 (i32)** [[SLOT]] -// CHECK-NEXT: [[T3:%.*]] = bitcast i32 (i32)* [[T2]] to i8* +// CHECK-NEXT: [[T2:%.*]] = load {{.*}} [[SLOT:%.*]], +// CHECK: store +// CHECK-NEXT: [[T3:%.*]] = bitcast // CHECK-NEXT: call void @objc_release(i8* [[T3]]) // CHECK-NEXT: ret @@ -112,7 +112,7 @@ void test_ObjCBlockMember_copy_assign(ObjCBlockMember m1, ObjCBlockMember m2) { // Implicitly-generated default constructor for ObjCBlockMember // CHECK: define linkonce_odr void @_ZN15ObjCBlockMemberC2Ev -// CHECK: store i32 (i32)* null, +// CHECK: store {{.*}} null, // CHECK-NEXT: ret void // Implicitly-generated copy constructor for ObjCArrayMember |

