summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenObjC
Commit message (Collapse)AuthorAgeFilesLines
...
* ObjectiveC IRGen. Replace _objc_empty_vtable pointer in Objective-C Fariborz Jahanian2013-10-241-0/+10
| | | | | | class metadata for certain deployment targets. // rdar://14802916 llvm-svn: 193359
* Emit a .ident saying that clang produced this file.Rafael Espindola2013-10-161-3/+3
| | | | | | Patch by Katya Romanova. llvm-svn: 192832
* Replace -fobjc-default-synthesize-properties with ↵Rafael Espindola2013-09-277-7/+7
| | | | | | | | | disable-objc-default-synthesize-properties. We want the modern behavior most of the time, so inverting the option simplifies the driver and the tests. llvm-svn: 191551
* Debug info: Fix a crash when trying to construct a type with redundantAdrian Prantl2013-09-261-0/+23
| | | | | | | ownership qualifiers. Fixes rdar://problem/14990656. llvm-svn: 191463
* ObjectiveC: Allow NS_RETURNS_INNER_POINTER annotation Fariborz Jahanian2013-09-191-1/+46
| | | | | | | | | | of ObjectiveC properties to mean annotation of NS_RETURNS_INNER_POINTER on its synthesized getter. This also facilitates more migration to properties when methods are annotated with NS_RETURNS_INNER_POINTER. // rdar://14990439 llvm-svn: 191009
* Add a define for the ObjFW runtime ABI version.Benjamin Kramer2013-09-161-2/+2
| | | | | | | | | This removes __has_feature(objc_msg_lookup_stret), as it is not required anymore after this patch. Patch by Jonathan Schleifer! llvm-svn: 190791
* Don't pass -O0 to clang_cc1, it is the default.Rafael Espindola2013-09-0414-17/+17
| | | | llvm-svn: 189910
* Debug Info: follow-up patch to r189283.Manman Ren2013-08-261-1/+1
| | | | | | | Thanks David for his suggestion. This commit updates testing cases to have more specific CHECKs. llvm-svn: 189286
* Debug Info: add an identifier field to DICompositeType.Manman Ren2013-08-261-1/+1
| | | | | | | Paired with llvm r189282. Update testing cases to handle an extra field for DICompositeType. llvm-svn: 189283
* Simplify assert-neutral matching in test case.David Blaikie2013-08-191-1/+1
| | | | | | | Originally committed in r188651, improved/fixed to be assert-neutral by Takumi in r188661. llvm-svn: 188686
* clang/test/CodeGenObjC/2010-02-09-DbgSelf.m: Tweak for -Asserts in r188651.NAKAMURA Takumi2013-08-191-1/+1
| | | | llvm-svn: 188661
* DebugInfo: Do not include line/file info for artificial parameters & ↵David Blaikie2013-08-193-9/+7
| | | | | | parameters of artificial functions llvm-svn: 188651
* CHECK-LABEL-ify some code gen tests to improve diagnostic experience when ↵Stephen Lin2013-08-1538-153/+153
| | | | | | tests fail. llvm-svn: 188447
* Fix FileCheck --check-prefix lines.Tim Northover2013-08-1216-23/+23
| | | | | | | | | | Various tests had sprung up over the years which had --check-prefix=ABC on the RUN line, but "CHECK-ABC:" later on. This happened to work before, but was strictly incorrect. FileCheck is getting stricter soon though. Patch by Ron Ofir. llvm-svn: 188174
* Fix test for Release builds.Eli Friedman2013-07-261-2/+2
| | | | | | Attempt 2. Sorry about the noise. llvm-svn: 187183
* Fix test for Release builds.Eli Friedman2013-07-261-2/+2
| | | | llvm-svn: 187178
* Fix GNU ObjC ABI for a message returning a struct.Eli Friedman2013-07-261-0/+29
| | | | | | | | | This allows the ObjFW runtime to correctly implement message forwarding for messages which return a struct. Patch by Jonathan Schleifer. llvm-svn: 187174
* Debug Info: Fix an oversight of r186553. Ensure that the function prologueAdrian Prantl2013-07-241-0/+3
| | | | | | of an artificial function gets an artificial location as well. llvm-svn: 187074
* add radar number to testcase.Adrian Prantl2013-07-241-0/+1
| | | | llvm-svn: 187073
* Further simplify test case from r186894David Blaikie2013-07-231-15/+5
| | | | llvm-svn: 186905
* Simplify testcase.Adrian Prantl2013-07-231-18/+3
| | | | | | rdar://problem/14386148 llvm-svn: 186901
* Debug Info: Acknowledge the alignment when locating byref block variables.Adrian Prantl2013-07-221-0/+38
| | | | | | Fixes rdar://problem/14386148 llvm-svn: 186894
* Don't generate bogus line table entries for __copy_helper_block_ andAdrian Prantl2013-07-181-3/+17
| | | | | | __destroy_helper_block_, but do generate scope information. llvm-svn: 186553
* Objective-C: Produce gcc compatible encoding ofFariborz Jahanian2013-07-121-0/+18
| | | | | | | ivar type in meta-data while preventing recursive encoding in a corner case. // rdar://14408244 llvm-svn: 186169
* Replace 'grep foo | count 0' with 'not grep foo'.Rafael Espindola2013-07-045-10/+10
| | | | | | This avoids depending on pipefail not being used. llvm-svn: 185648
* DebugInfo: handle the DI asm printing change to reword '[fwd]' as '[decl]' ↵David Blaikie2013-06-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | and add '[def]' for non-decl tag types This is to make test cases looking for definitions more legible by making the definition explicit rather than just the absence of '[fwd]'. This allowed the debug-info-record tests to be rephrased - and in the interests of reducing the number of individual test cases/invocations we have, I merged them into one file, separated them with namespaces (& then moved them to C++ because namespaces are great). If they need to remain 'C' only tests, they can be moved back. (I didn't group them with 'debug-info-class.cpp' because these tests only apply to -fno-limit-debug-info) I removed the pieces of code that would cause these tests to pass under -flimit-debug-info to ensure the tests remain relevant to their fixes should we ever improve -flimit-debug-info to catch that kind of code. This commit is version locked with the corresponding change to DebugInfo.h in LLVM. Except some transient buildbot fallout. llvm-svn: 184524
* Unify return type checking for functions and ObjC methods. Move all theEli Friedman2013-06-141-1/+1
| | | | | | | | random checks for ObjC object return types to SemaType.cpp. Fixes issue with ObjC method type checking reported on cfe-dev. llvm-svn: 184006
* Correctly handle designated initializers which modify an array initializedEli Friedman2013-06-111-0/+8
| | | | | | | | | | with a string. This case is sort of tricky because we can't modify the StringLiteral used to represent such initializers. We are forced to decompose the string into individual characters. Fixes <rdar://problem/10465114>. llvm-svn: 183791
* Make sure we don't emit invalid IR for StmtExprs with complex cleanups.Eli Friedman2013-06-101-3/+9
| | | | | | Fixes <rdar://problem/14074868>. llvm-svn: 183699
* ObjC Debug Info: Emit the names of accessors whenever they diverge fromAdrian Prantl2013-06-071-0/+56
| | | | | | | | the default names, not just when the isImplicit flag is set. rdar://problem/14035789 llvm-svn: 183474
* Objective-C encoding. Fixes up encodeing forFariborz Jahanian2013-06-041-1/+1
| | | | | | | arrays of empty structs. // rdar://14053082 (also pr13062). llvm-svn: 183234
* Do not reuse the debug location of the return value's store if there is ↵Adrian Prantl2013-05-301-0/+40
| | | | | | | | autorelease code to be emitted between store and return instructions. This is analoguous to what we do for lexical scope cleanups. rdar://problem/13977888 llvm-svn: 182947
* Bugfix for r181629:Adrian Prantl2013-05-221-1/+2
| | | | | | | | | - The return type should be a pointer to the class type. - Make the condition more specific. rdar://problem/13359718 llvm-svn: 182504
* ObjC Debug Info: Emit the correct method names for accessors forAdrian Prantl2013-05-171-0/+35
| | | | | | | | properties declared in a protocol. rdar://problem/13798000 llvm-svn: 182176
* ObjC debug info: Substitute the class type for methods that returnAdrian Prantl2013-05-101-0/+27
| | | | | | | | a related type (e.g., if they use the instancetype keyword). rdar://problem/13359718 llvm-svn: 181629
* Correctly emit certain implicit references to 'self' even withinJohn McCall2013-05-032-4/+2
| | | | | | | | | | | | | | | | | | a lambda. Bug #1 is that CGF's CurFuncDecl was "stuck" at lambda invocation functions. Fix that by generally improving getNonClosureContext to look through lambdas and captured statements but only report code contexts, which is generally what's wanted. Audit uses of CurFuncDecl and getNonClosureAncestor for correctness. Bug #2 is that lambdas weren't specially mapping 'self' when inside an ObjC method. Fix that by removing the requirement for that and using the normal EmitDeclRefLValue path in LoadObjCSelf. rdar://13800041 llvm-svn: 181000
* Ensure that the line table for functions with cleanups is sequential.Adrian Prantl2013-05-022-4/+108
| | | | | | | | | | | | | | | | If there is cleanup code, the cleanup code gets the debug location of the closing '}'. The subsequent ret IR-instruction does not get a debug location. The return _expression_ will get the debug location of the return statement. If the function contains only a single, simple return statement, the cleanup code may become the first breakpoint in the function. In this case we set the debug location for the cleanup code to the location of the return statement. rdar://problem/13442648 llvm-svn: 180932
* Remove an empty line so the line numbers match up again after the recent ↵Adrian Prantl2013-04-191-1/+0
| | | | | | documentation change. llvm-svn: 179898
* still not relaxed enough.Adrian Prantl2013-04-191-1/+1
| | | | llvm-svn: 179897
* cleanup and relax test casesAdrian Prantl2013-04-191-2/+3
| | | | llvm-svn: 179896
* Emit the underlying type in the debug info for all kinds of fixed enumsAdrian Prantl2013-04-191-0/+64
| | | | | | | | instead of only C++11-scoped-with-class-tag enums. rdar://problem/13463793 llvm-svn: 179879
* objc_autoreleasePoolPop() can throw if a -dealloc does.John McCall2013-04-161-2/+25
| | | | | | | | | | | | | Model it as throwing so that the exception can be caught. This is generally not expected to have significant code-size impact because the contents of the @autoreleasepool block are very likely to contain a call, very likely at the same cleanup level as the @autoreleasepool itself. rdar://13660038 llvm-svn: 179630
* Trying fixing test to make buildbot happy again.Fariborz Jahanian2013-04-161-1/+1
| | | | llvm-svn: 179629
* modify test to try to make buildbot happy.Fariborz Jahanian2013-04-161-2/+1
| | | | llvm-svn: 179606
* Objective-C IRGen. Use llvm::WeakVHFariborz Jahanian2013-04-161-0/+44
| | | | | | | | | | for caching couple of global symbols used for generation of CF/NS string meta-data so they are not released prematuely in certain corner cases. // rdar:// 13598026. Reviewed by John M. llvm-svn: 179599
* FileCheck-ify more grep tests with quoted double quotesReid Kleckner2013-04-113-62/+69
| | | | | | | | This required some tedious reordering to match clang's order. Presumably these ObjC tests were generated based on llvm-gcc's output ordering. llvm-svn: 179282
* FileCheck-ify some clang grep tests that use double quotesReid Kleckner2013-04-103-14/+16
| | | | | | | The escaping interaction between Python and grep doesn't work on my system. This change fixes the tests for me. llvm-svn: 179214
* Don't copy just to capture a strong block pointer under ARC.John McCall2013-04-081-0/+39
| | | | | | | | | It turns out that the optimizer can't eliminate this without extra information, for which there's a separate bug. rdar://13588325 llvm-svn: 179069
* Be sure to check ARC conventions on the implicit method declarationsJohn McCall2013-04-041-0/+45
| | | | | | | | | of a property just in case the property's getter happens to be +1. We won't synthesize a getter for such a property, but we will allow the user to define a +1 method for it. rdar://13115896 llvm-svn: 178731
* Protect the values of array and dictionary literals from theJohn McCall2013-04-041-24/+67
| | | | | | | | | | ARC optimizer while they're held in local unsafe buffers. Based on a patch by Jesse Rusak! rdar://13573224 llvm-svn: 178721
OpenPOWER on IntegriCloud