From f177a8df322f463fd382fb1588a27308fa728d34 Mon Sep 17 00:00:00 2001 From: Fariborz Jahanian Date: Wed, 16 Sep 2009 23:38:26 +0000 Subject: [PATCH] Additional tests for write-bariers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82092 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/CodeGenObjC/objc-assign-ivar.m | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/test/CodeGenObjC/objc-assign-ivar.m b/test/CodeGenObjC/objc-assign-ivar.m index f78b2eea6b..002b5c156e 100644 --- a/test/CodeGenObjC/objc-assign-ivar.m +++ b/test/CodeGenObjC/objc-assign-ivar.m @@ -1,5 +1,5 @@ // RUN: clang-cc -fnext-runtime -fobjc-gc -fobjc-newgc-api -emit-llvm -o %t %s && -// RUN: grep -F '@objc_assign_ivar' %t | count 11 && +// RUN: grep -F '@objc_assign_ivar' %t | count 14 && // RUN: true typedef struct { @@ -22,6 +22,9 @@ typedef struct { id nsobject; NSString *stringArray[10]; struct_with_ids_t inner; + + Foo *obj[20]; + short idx[5]; } @end @@ -42,6 +45,10 @@ void testIvars() { ASSIGNTEST(foo->inner.elementArray[0], IvarAssigns); // objc_assign_ivar ASSIGNTEST(foo->inner.cfElement, IvarAssigns); // objc_assign_ivar ASSIGNTEST(foo->inner.cfElementArray[0], IvarAssigns); // objc_assign_ivar - + int counter=1; + ASSIGNTEST(foo->obj[5], IvarAssigns); // objc_assign_ivar + ASSIGNTEST(foo->obj[++counter], IvarAssigns); // objc_assign_ivar + foo->idx[++counter] = 15; + ASSIGNTEST(foo->obj[foo->idx[2]], IvarAssigns); // objc_assign_ivar } -- 2.40.0