aboutsummaryrefslogtreecommitdiff
path: root/test/CodeGenObjC
AgeCommit message (Collapse)Author
2009-11-21This patch implements objective-c's 'SEL' type as a built-inFariborz Jahanian
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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89561 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17This patch finalizes implementatin of weak_importFariborz Jahanian
objective-c2 classes (radar 6815425). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89157 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17... and add back a few more triple forces.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89088 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Add some -triples I was a little too liberal in removing.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89084 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Merge several visibility tests into hidden-visibility.m, and check .ll outputDaniel Dunbar
not .s output. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89083 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Use -fblocks and -fobjc-nonfragile-abi when that is what is being tested, ↵Daniel Dunbar
instead of forcing the triple. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89072 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Don't #include <stdio.h> when tests don't need it, or use clang instead of ↵Daniel Dunbar
clang-cc when they do. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89070 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Move -fnext-runtime defaulting to driver (and change clang-cc default toDaniel Dunbar
-fnext-runtime), instead of using getDefaultLangOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89058 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-16Handle case of missing '@end' in implementation contextFariborz Jahanian
gracefully, on par with gcc, by: Issuing a warning, doing final sematinc check of its definitions and generating its meta-data. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88934 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-12Fix a code gen bug in i386-apple-darwin (objc fragile abi), sendingFariborz Jahanian
message to 'super'. Fixes radar 7205866. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87017 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08Remove RUN: true lines.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86432 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-08Eliminate &&s in tests.Daniel Dunbar
- 'for i in $(find . -type f); do sed -e 's#\(RUN:.*[^ ]\) *&& *$#\1#g' $i | FileUpdate $i; done', for the curious. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86430 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-03Switch XFAIL format to match LLVM.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85880 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-28Fix <rdar://problem/7330784>. Avoid crashing on 'Class<p>' when generating ↵Steve Naroff
meta-data for a class. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85440 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-27Fix crash when synthesizing property setters when the property type and ivarDaniel Dunbar
type have mismatched Objective-C types. - <rdar://problem/7336352> [irgen] crash in synthesized property construction git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85275 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-12Disable tests that check debug info intrinsic. This does not work if debug ↵Devang Patel
info intrinsics are not used to encode debug info. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83929 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-10Generate weak read barriers when reading a weak __blockFariborz Jahanian
variable inside the block. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83729 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-08Speed up testing by avoiding stdio.h, also helps testing on windows.Mike Stump
Patch by John Thompson. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83593 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-05Patch to implement Protocols on class extensions.Fariborz Jahanian
<rdar://problem/7269631> Protocols on class extensions don't work git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83322 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-30<rdar://problem/7263113> Make clang produce gcc's objc_assign_StrongCast as ↵Fariborz Jahanian
a result of type-cast of an ivar in assignment. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83150 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-26Use ABIArgInfo::getDirect() for all types that have a pointer representation.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82845 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-25Add a reduced test case for the weak ivar infinite recursion.John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82747 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-22Force triple in test.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82519 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-22Add test case for PR4894 (it was fixed in LLVM).Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82510 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-21Removed -fobjc-newgc-api option. clang now conforms toFariborz Jahanian
gcc-style write-barrier api only. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82493 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-21-fobjc-newgc-api is now the default.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82478 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-21Miscellanous fixes in generatation of objc gc's write-barriers.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82472 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-18Force a triple.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82216 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-18Fixed a bug in generation of the new write-barriers when Fariborz Jahanian
array syntax is used to derefernce and assign to ivar pointee. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82183 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-17Force triple for tests using __strong.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82133 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-17IRgen/ObjC: Correctly construct the function info for variadic message sends.Daniel Dunbar
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 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82118 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-17Force triple, although probably the real fix is to tie __strong to -fobjc-gc.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82101 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-16Removed useless stuff from the test.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82095 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-16More test for objc gc's mixed write-barriers.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82094 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-16Additional tests for write-bariers.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82092 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-16Test for variety of write-barriers.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82091 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-16patch for generating objc'2 objc_assign_ivar. WIP.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82090 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-16Starting patch to generate more specific API for objc'sFariborz Jahanian
GC. Currently, new API will be generated under clang-cc's -fobjc-newgc-api flag which will eventually become the default. WIP. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82082 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-16Do not generate write-barrier in indirect assignment toFariborz Jahanian
a weak object. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82061 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-13Force triple to avoid spurious differences due to runtime choice.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81666 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-10Fix a regression where write-barrier was not being generated Fariborz Jahanian
for block pointer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81479 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-10Non fragile ABI for GNU runtime. Patch bu David Chisnall.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81462 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-08More objc GC's API work for array of pointers declaredFariborz Jahanian
as __strong. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81283 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-08Fixes a regression in generating objc's GC APIFariborz Jahanian
in assiging to c pointer types with a GC'able attribute. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81244 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-08Vastly improve PredefinedExpr output, both in Sema and CodeGen. Patch by Sam ↵Anders Carlsson
Weinig! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81237 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-06Test for generation of objc_assign_strongCast in a variety ofFariborz Jahanian
situations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81129 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-01Fixed a property getter ir-gen crash.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80681 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-31Re-implemented generation of objc_memmove_collectableFariborz Jahanian
API for copying GC'able aggregates (Next runtime only). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80607 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-31Updated GNU runtime non-fragile ABI.David Chisnall
Added -fconstant-string-class= option. Added __has_feature() test for non-fragile ABI. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80591 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-25Test case for r79968 (courtesy of Anders).Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79998 91177308-0d34-0410-b5e6-96231b3b80d8