David Chisnall
27033c9171
Test case for bug fixed in r89457.
...
llvm-svn: 89605
2009-11-22 17:42:02 +00:00
Fariborz Jahanian
252ba5fb6f
This patch implements objective-c's 'SEL' type as a built-in
...
type and fixes a long-standing code gen. crash reported in
at least two PRs and a radar. (radar 7405040 and pr5025).
There are couple of remaining issues that I would like for
Ted. and Doug to look at:
Ted, please look at failure in Analysis/MissingDealloc.m.
I have temporarily added an expected-warning to make the
test pass. This tests has a declaration of 'SEL' type which
may not co-exist with the new changes.
Doug, please look at a FIXME in PCHWriter.cpp/PCHReader.cpp.
I think the changes which I have ifdef'ed out are correct. They
need be considered for in a few Indexer/PCH test cases.
llvm-svn: 89561
2009-11-21 19:53:08 +00:00
Fariborz Jahanian
95ace55701
This patch finalizes implementatin of weak_import
...
objective-c2 classes (radar 6815425).
llvm-svn: 89157
2009-11-17 22:42:00 +00:00
Daniel Dunbar
f386ce5429
... and add back a few more triple forces.
...
llvm-svn: 89088
2009-11-17 10:27:58 +00:00
Daniel Dunbar
cba26d4dc5
Add some -triples I was a little too liberal in removing.
...
llvm-svn: 89084
2009-11-17 10:04:38 +00:00
Daniel Dunbar
7e4ae04bed
Merge several visibility tests into hidden-visibility.m, and check .ll output
...
not .s output.
llvm-svn: 89083
2009-11-17 10:04:28 +00:00
Daniel Dunbar
fba0b44d35
Use -fblocks and -fobjc-nonfragile-abi when that is what is being tested, instead of forcing the triple.
...
llvm-svn: 89072
2009-11-17 09:04:12 +00:00
Daniel Dunbar
feedba68b5
Don't #include <stdio.h> when tests don't need it, or use clang instead of clang-cc when they do.
...
llvm-svn: 89070
2009-11-17 08:57:36 +00:00
Daniel Dunbar
4656c53e12
Move -fnext-runtime defaulting to driver (and change clang-cc default to
...
-fnext-runtime), instead of using getDefaultLangOptions.
llvm-svn: 89058
2009-11-17 07:07:28 +00:00
Fariborz Jahanian
9290ede494
Handle case of missing '@end' in implementation context
...
gracefully, on par with gcc, by: Issuing a warning,
doing final sematinc check of its definitions and generating
its meta-data.
llvm-svn: 88934
2009-11-16 18:57:01 +00:00
Fariborz Jahanian
eb80c98a72
Fix a code gen bug in i386-apple-darwin (objc fragile abi), sending
...
message to 'super'. Fixes radar 7205866.
llvm-svn: 87017
2009-11-12 20:14:24 +00:00
Daniel Dunbar
34546ce43d
Remove RUN: true lines.
...
llvm-svn: 86432
2009-11-08 01:47:25 +00:00
Daniel Dunbar
8b57697954
Eliminate &&s in tests.
...
- 'for i in $(find . -type f); do sed -e 's#\(RUN:.*[^ ]\) *&& *$#\1#g' $i | FileUpdate $i; done', for the curious.
llvm-svn: 86430
2009-11-08 01:45:36 +00:00
Daniel Dunbar
a530841b4f
Switch XFAIL format to match LLVM.
...
llvm-svn: 85880
2009-11-03 07:25:45 +00:00
Steve Naroff
f0c8611d3f
Fix <rdar://problem/7330784>. Avoid crashing on 'Class<p>' when generating meta-data for a class.
...
llvm-svn: 85440
2009-10-28 22:03:49 +00:00
Daniel Dunbar
c14753b781
Fix crash when synthesizing property setters when the property type and ivar
...
type have mismatched Objective-C types.
- <rdar://problem/7336352> [irgen] crash in synthesized property construction
llvm-svn: 85275
2009-10-27 19:21:30 +00:00
Devang Patel
232f278fc1
Disable tests that check debug info intrinsic. This does not work if debug info intrinsics are not used to encode debug info.
...
llvm-svn: 83929
2009-10-12 23:46:58 +00:00
Fariborz Jahanian
07ca72725a
Generate weak read barriers when reading a weak __block
...
variable inside the block.
llvm-svn: 83729
2009-10-10 20:07:56 +00:00
Mike Stump
f8c1f0d1f0
Speed up testing by avoiding stdio.h, also helps testing on windows.
...
Patch by John Thompson.
llvm-svn: 83593
2009-10-08 23:05:06 +00:00
Fariborz Jahanian
092cd6e624
Patch to implement Protocols on class extensions.
...
<rdar://problem/7269631> Protocols on class extensions don't work
llvm-svn: 83322
2009-10-05 20:41:32 +00:00
Fariborz Jahanian
e01e434aef
<rdar://problem/7263113> Make clang produce gcc's objc_assign_StrongCast as a result of type-cast of an ivar in assignment.
...
llvm-svn: 83150
2009-09-30 17:10:29 +00:00
Anders Carlsson
0374742326
Use ABIArgInfo::getDirect() for all types that have a pointer representation.
...
llvm-svn: 82845
2009-09-26 03:56:53 +00:00
John McCall
6cb02c1d7e
Add a reduced test case for the weak ivar infinite recursion.
...
llvm-svn: 82747
2009-09-25 02:18:37 +00:00
Daniel Dunbar
0512647362
Force triple in test.
...
llvm-svn: 82519
2009-09-22 03:50:39 +00:00
Daniel Dunbar
a25a9dff0d
Add test case for PR4894 (it was fixed in LLVM).
...
llvm-svn: 82510
2009-09-22 02:18:40 +00:00
Fariborz Jahanian
71848a3ff1
Removed -fobjc-newgc-api option. clang now conforms to
...
gcc-style write-barrier api only.
llvm-svn: 82493
2009-09-21 23:03:37 +00:00
Fariborz Jahanian
a74039426d
-fobjc-newgc-api is now the default.
...
llvm-svn: 82478
2009-09-21 20:17:37 +00:00
Fariborz Jahanian
38c3ae9bc4
Miscellanous fixes in generatation of objc gc's write-barriers.
...
llvm-svn: 82472
2009-09-21 18:54:29 +00:00
Daniel Dunbar
23c1ae7fae
Force a triple.
...
llvm-svn: 82216
2009-09-18 08:46:07 +00:00
Fariborz Jahanian
2e32ddc7ba
Fixed a bug in generation of the new write-barriers when
...
array syntax is used to derefernce and assign to ivar pointee.
llvm-svn: 82183
2009-09-18 00:04:00 +00:00
Daniel Dunbar
51418c3b90
Force triple for tests using __strong.
...
llvm-svn: 82133
2009-09-17 07:21:40 +00:00
Daniel Dunbar
df0e62d0a1
IRgen/ObjC: Correctly construct the function info for variadic message sends.
...
This fixes some bad -O0 codegen and the unnecessary clearing of al on entry to objc_msgSend for most message sends.
<rdar://problem/7102824> [irgen] unnecessary xorb on calls to objc_msgSend on x86_64
llvm-svn: 82118
2009-09-17 04:01:40 +00:00
Daniel Dunbar
db7ec04fed
Force triple, although probably the real fix is to tie __strong to -fobjc-gc.
...
llvm-svn: 82101
2009-09-17 00:28:00 +00:00
Fariborz Jahanian
1ff8299c67
Removed useless stuff from the test.
...
llvm-svn: 82095
2009-09-16 23:52:53 +00:00
Fariborz Jahanian
0bdc001b6e
More test for objc gc's mixed write-barriers.
...
llvm-svn: 82094
2009-09-16 23:49:04 +00:00
Fariborz Jahanian
e29f04859b
Additional tests for write-bariers.
...
llvm-svn: 82092
2009-09-16 23:38:26 +00:00
Fariborz Jahanian
5f41a8c4af
Test for variety of write-barriers.
...
llvm-svn: 82091
2009-09-16 23:30:59 +00:00
Fariborz Jahanian
de1d324dce
patch for generating objc'2 objc_assign_ivar. WIP.
...
llvm-svn: 82090
2009-09-16 23:11:23 +00:00
Fariborz Jahanian
a7fa6beb2e
Starting patch to generate more specific API for objc's
...
GC. Currently, new API will be generated under
clang-cc's -fobjc-newgc-api flag which will eventually
become the default. WIP.
llvm-svn: 82082
2009-09-16 21:37:16 +00:00
Fariborz Jahanian
cceedbff27
Do not generate write-barrier in indirect assignment to
...
a weak object.
llvm-svn: 82061
2009-09-16 18:09:18 +00:00
Daniel Dunbar
42684d5af8
Force triple to avoid spurious differences due to runtime choice.
...
llvm-svn: 81666
2009-09-13 01:45:29 +00:00
Fariborz Jahanian
8d6298b272
Fix a regression where write-barrier was not being generated
...
for block pointer.
llvm-svn: 81479
2009-09-10 23:38:45 +00:00
Fariborz Jahanian
2cde203392
Non fragile ABI for GNU runtime. Patch bu David Chisnall.
...
llvm-svn: 81462
2009-09-10 21:48:21 +00:00
Fariborz Jahanian
063c7720f4
More objc GC's API work for array of pointers declared
...
as __strong.
llvm-svn: 81283
2009-09-08 23:38:54 +00:00
Fariborz Jahanian
b17a190186
Fixes a regression in generating objc's GC API
...
in assiging to c pointer types with a GC'able
attribute.
llvm-svn: 81244
2009-09-08 19:45:47 +00:00
Anders Carlsson
2fb0824197
Vastly improve PredefinedExpr output, both in Sema and CodeGen. Patch by Sam Weinig!
...
llvm-svn: 81237
2009-09-08 18:24:21 +00:00
Fariborz Jahanian
f0ff9832ba
Test for generation of objc_assign_strongCast in a variety of
...
situations.
llvm-svn: 81129
2009-09-06 19:44:57 +00:00
Fariborz Jahanian
1a50477385
Fixed a property getter ir-gen crash.
...
llvm-svn: 80681
2009-09-01 17:02:21 +00:00
Fariborz Jahanian
879d726608
Re-implemented generation of objc_memmove_collectable
...
API for copying GC'able aggregates (Next runtime only).
llvm-svn: 80607
2009-08-31 19:33:16 +00:00
David Chisnall
5778fce141
Updated GNU runtime non-fragile ABI.
...
Added -fconstant-string-class= option.
Added __has_feature() test for non-fragile ABI.
llvm-svn: 80591
2009-08-31 16:41:57 +00:00