llvm-project/clang/test/CodeGenObjC
Douglas Gregor e83b95641f Substitute type arguments into uses of Objective-C interface members.
When messaging a method that was defined in an Objective-C class (or
category or extension thereof) that has type parameters, substitute
the type arguments for those type parameters. Similarly, substitute
into property accesses, instance variables, and other references.

This includes general infrastructure for substituting the type
arguments associated with an ObjCObject(Pointer)Type into a type
referenced within a particular context, handling all of the
substitutions required to deal with (e.g.) inheritance involving
parameterized classes. In cases where no type arguments are available
(e.g., because we're messaging via some unspecialized type, id, etc.),
we substitute in the type bounds for the type parameters instead.

Example:

  @interface NSSet<T : id<NSCopying>> : NSObject <NSCopying>
  - (T)firstObject;
  @end

  void f(NSSet<NSString *> *stringSet, NSSet *anySet) {
    [stringSet firstObject]; // produces NSString*
    [anySet firstObject]; // produces id<NSCopying> (the bound)
  }

When substituting for the type parameters given an unspecialized
context (i.e., no specific type arguments were given), substituting
the type bounds unconditionally produces type signatures that are too
strong compared to the pre-generics signatures. Instead, use the
following rule:

  - In covariant positions, such as method return types, replace type
    parameters with “id” or “Class” (the latter only when the type
    parameter bound is “Class” or qualified class, e.g,
    “Class<NSCopying>”)
  - In other positions (e.g., parameter types), replace type
    parameters with their type bounds.
  - When a specialized Objective-C object or object pointer type
    contains a type parameter in its type arguments (e.g.,
    NSArray<T>*, but not NSArray<NSString *> *), replace the entire
    object/object pointer type with its unspecialized version (e.g.,
    NSArray *).

llvm-svn: 241543
2015-07-07 03:57:53 +00:00
..
Inputs Objective-C. revert patch for rdar://17554063. 2014-10-28 18:28:16 +00:00
2007-04-03-ObjcEH.m
2007-05-02-Strong.m
2007-10-18-ProDescriptor.m
2007-10-23-GC-WriteBarrier.m
2008-08-25-incompatible-cond-expr.m
2008-10-3-EhValue.m Restore a -cc1 invariant that was causing problems on PPC64. 2012-08-27 19:56:37 +00:00
2008-10-23-invalid-icmp.m
2008-11-12-Metadata.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
2008-11-24-ConstCFStrings.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
2008-11-25-Blocks.m
2009-01-21-invalid-debug-info.m
2009-01-26-WriteBarrier-2.m
2009-02-05-VolatileProp.m
2009-08-05-utf16.m Use private linkage for utf-16 objc strings too. 2014-01-21 02:57:56 +00:00
2010-02-01-utf16-with-null.m Test case updates for explicit type parameter to the gep operator 2015-03-13 18:21:46 +00:00
2010-02-09-DbgSelf.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
2010-02-15-Dbg-MethodStart.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
2010-02-23-DbgInheritance.m
2010-03-17-StructRef.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
2011-03-08-IVarLookup.m
arc-arm.m ARM64: initial clang support commit. 2014-03-29 15:09:45 +00:00
arc-block-copy-escape.m Account for calling convention specifiers in function definitions in IR test cases 2015-06-29 17:29:50 +00:00
arc-blocks.m Revert "Revert r234581, it might have caused a few miscompiles in Chromium." 2015-04-22 21:38:15 +00:00
arc-bridged-cast.m Revert "Revert r234581, it might have caused a few miscompiles in Chromium." 2015-04-22 21:38:15 +00:00
arc-captured-32bit-block-var-layout-2.m Don't pass -O0 to clang_cc1, it is the default. 2013-09-04 04:12:25 +00:00
arc-captured-32bit-block-var-layout.m Don't pass -O0 to clang_cc1, it is the default. 2013-09-04 04:12:25 +00:00
arc-captured-block-var-inlined-layout.m Don't pass -O0 to clang_cc1, it is the default. 2013-09-04 04:12:25 +00:00
arc-captured-block-var-layout.m Don't pass -O0 to clang_cc1, it is the default. 2013-09-04 04:12:25 +00:00
arc-compound-stmt.m
arc-cond-stmt.m
arc-exceptions.m CHECK-LABEL-ify some code gen tests to improve diagnostic experience when tests fail. 2013-08-15 06:47:53 +00:00
arc-foreach.m Update Clang tests to handle explicitly typed load changes in LLVM. 2015-02-27 21:19:58 +00:00
arc-ivar-layout.m Changed renaming of local symbols by inserting a dot vefore the numeric suffix 2015-05-12 16:48:43 +00:00
arc-linetable-autorelease.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
arc-linetable.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
arc-literals.m Revert "Revert r234581, it might have caused a few miscompiles in Chromium." 2015-04-22 21:38:15 +00:00
arc-loadweakretained-release.m Changed renaming of local symbols by inserting a dot vefore the numeric suffix 2015-05-12 16:48:43 +00:00
arc-no-arc-exceptions.m [opaque pointer type] Update test cases now that the type for an invoke is just a function type, not a pointer-to-function type 2015-04-24 19:33:25 +00:00
arc-no-runtime.m At -O0, prefer objc_storeStrong with a null new value to the 2012-10-17 02:28:37 +00:00
arc-precise-lifetime.m Revert "Revert r234581, it might have caused a few miscompiles in Chromium." 2015-04-22 21:38:15 +00:00
arc-property.m Update Clang tests to handle explicitly typed load changes in LLVM. 2015-02-27 21:19:58 +00:00
arc-related-result-type.m Update Clang tests to handle explicitly typed load changes in LLVM. 2015-02-27 21:19:58 +00:00
arc-ternary-op.m Revert "Revert r234581, it might have caused a few miscompiles in Chromium." 2015-04-22 21:38:15 +00:00
arc-unbridged-cast.m
arc-unopt.m Update Clang tests to handle explicitly typed load changes in LLVM. 2015-02-27 21:19:58 +00:00
arc-unoptimized-byref-var.m Update Clang tests to handle explicitly typed load changes in LLVM. 2015-02-27 21:19:58 +00:00
arc-weak-property.m Update Clang tests to handle explicitly typed load changes in LLVM. 2015-02-27 21:19:58 +00:00
arc-with-atthrow.m CHECK-LABEL-ify some code gen tests to improve diagnostic experience when tests fail. 2013-08-15 06:47:53 +00:00
arc.m Revert "Revert r234581, it might have caused a few miscompiles in Chromium." 2015-04-22 21:38:15 +00:00
arm-atomic-scalar-setter-getter.m Have the driver and the target code agree on what the default ABI 2014-12-05 01:06:59 +00:00
arm64-int32-ivar.m Update Clang tests to handle explicitly typed load changes in LLVM. 2015-02-27 21:19:58 +00:00
assign.m CHECK-LABEL-ify some code gen tests to improve diagnostic experience when tests fail. 2013-08-15 06:47:53 +00:00
atomic-aggregate-property.m Update Clang tests to handle explicitly typed load changes in LLVM. 2015-02-27 21:19:58 +00:00
attr-availability.m
attr-callconv.m Implement the MSABI and SysVABI calling conventions for Objective-C method declarations. This appears to be an omission from r189644. 2013-12-18 16:23:37 +00:00
attr-exception.m Test case updates for explicit type parameter to the gep operator 2015-03-13 18:21:46 +00:00
attr-minsize.m Update the front end to use minsize attribute 2012-11-01 23:55:47 +00:00
attr-strong.c
auto-property-synthesize-protocol.m Replace -fobjc-default-synthesize-properties with disable-objc-default-synthesize-properties. 2013-09-27 20:21:48 +00:00
autorelease.m Update clang to take into account the changes to personality fns 2015-06-17 20:53:19 +00:00
bitfield-1.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
bitfield-access.m Update Clang tests to handle explicitly typed load changes in LLVM. 2015-02-27 21:19:58 +00:00
bitfield-gnu.m Rename the GCC Objective-C runtime to gcc from gnu-fragile and the GNUstep 2012-07-03 20:49:52 +00:00
bitfield-ivar-metadata.m
bitfield-ivar-offsets.m Replace 'grep foo | count 0' with 'not grep foo'. 2013-07-04 15:22:16 +00:00
bitfield_encoding.m Rename the GCC Objective-C runtime to gcc from gnu-fragile and the GNUstep 2012-07-03 20:49:52 +00:00
block-6.m Update Clang tests to handle explicitly typed load changes in LLVM. 2015-02-27 21:19:58 +00:00
block-byref-debuginfo.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
block-byref-variable-layout.m Don't pass -O0 to clang_cc1, it is the default. 2013-09-04 04:12:25 +00:00
block-over-align.m Objective-C. Fixes an assert where because of captured 2014-08-12 15:51:49 +00:00
block-var-layout.m Objective-C. Remove an assertion which asserts 2014-02-24 19:10:37 +00:00
blocks-1.m Replace 'grep foo | count 0' with 'not grep foo'. 2013-07-04 15:22:16 +00:00
blocks-2.m Update clang to take into account the changes to personality fns 2015-06-17 20:53:19 +00:00
blocks-3.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
blocks-4.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
blocks-5.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
blocks-ivar-debug.m
blocks.m [opaque pointer types] Explicit non-pointer type for call expressions 2015-04-16 23:25:00 +00:00
boxing.m Test case updates for explicit type parameter to the gep operator 2015-03-13 18:21:46 +00:00
builtin-memfns.m Fix PR reference in test. 2012-08-29 21:27:50 +00:00
builtins.m CHECK-LABEL-ify some code gen tests to improve diagnostic experience when tests fail. 2013-08-15 06:47:53 +00:00
catch-lexical-block.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
category-class.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
category-super-class-meth.m Changed renaming of local symbols by inserting a dot vefore the numeric suffix 2015-05-12 16:48:43 +00:00
class-getter-dotsyntax.m
class-type.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
compatibility-alias.m
complex-double-abi.m Properly assemble PHIs after a null-checked invoke of objc_msgSend. 2013-02-12 05:53:35 +00:00
complex-property.m Use private linkage for globals we already name with \01L and \01l. 2014-02-27 19:01:11 +00:00
compound-literal-property-access.m [Objective-C patch] Patch to fix a crash in IRGen because 2015-04-06 16:56:39 +00:00
constant-string-class-1.m
constant-string-class.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
constant-strings.m Give explicit sections for string constants used in NSStrings. 2014-01-20 20:33:18 +00:00
continuation-class.m
deadcode_strip_used_var.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
debug-info-block-captured-self.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-block-helper.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-block-line.m clang/test: REQUIRES: s/x86-64-registered-target/x86-registered-target/ 2013-12-04 03:41:33 +00:00
debug-info-block-type.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-blocks.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-class-extension.m Use an Itanium triple in DWARF debug info tests 2014-01-30 01:01:36 +00:00
debug-info-class-extension2.m Use an Itanium triple in DWARF debug info tests 2014-01-30 01:01:36 +00:00
debug-info-class-extension3.m
debug-info-crash-2.m clang/test: REQUIRES: s/x86-64-registered-target/x86-registered-target/ 2013-12-04 03:41:33 +00:00
debug-info-crash.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
debug-info-default-synth-ivar.m Replace -fobjc-default-synthesize-properties with disable-objc-default-synthesize-properties. 2013-09-27 20:21:48 +00:00
debug-info-fwddecl.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-getter-name.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-id-with-protocol.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-impl.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-instancetype.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-ivars-extension.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-ivars-indirect.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-ivars-private.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-ivars.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-lifetime-crash.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-linkagename.m
debug-info-nested-blocks.m IR: Make metadata typeless in assembly, clang side 2014-12-15 19:10:08 +00:00
debug-info-property-accessors.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-property.m Use an Itanium triple in DWARF debug info tests 2014-01-30 01:01:36 +00:00
debug-info-property2.m Use an Itanium triple in DWARF debug info tests 2014-01-30 01:01:36 +00:00
debug-info-property3.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-property4.m Use an Itanium triple in DWARF debug info tests 2014-01-30 01:01:36 +00:00
debug-info-property5.m Use an Itanium triple in DWARF debug info tests 2014-01-30 01:01:36 +00:00
debug-info-pubtypes.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-selector.m
debug-info-self.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-static-var.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-synthesis.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-info-variadic-method.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debug-property-synth.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
debuginfo-properties.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
default-property-synthesis.m
designated-initializers.m Correctly handle designated initializers which modify an array initialized 2013-06-11 21:48:11 +00:00
dot-syntax-1.m
dot-syntax-2.m
dot-syntax.m
encode-cstyle-method.m Use private linkage for globals we already name with \01L and \01l. 2014-02-27 19:01:11 +00:00
encode-test-2.m
encode-test-3.m FileCheck-ify some clang grep tests that use double quotes 2013-04-10 21:10:39 +00:00
encode-test-4.m
encode-test-5.m Test case updates for explicit type parameter to the gep operator 2015-03-13 18:21:46 +00:00
encode-test-6.m Test case updates for explicit type parameter to the gep operator 2015-03-13 18:21:46 +00:00
encode-test.m Changed renaming of local symbols by inserting a dot vefore the numeric suffix 2015-05-12 16:48:43 +00:00
exceptions-asm-attribute.m Don't manually insert L prefixes. 2014-11-06 13:30:38 +00:00
exceptions-nonfragile.m CHECK-LABEL-ify some code gen tests to improve diagnostic experience when tests fail. 2013-08-15 06:47:53 +00:00
exceptions.m Adjust clang side tests effected by 239795 before reapplying said change 2015-06-16 20:24:06 +00:00
extended-block-signature-encode.m Fix FileCheck --check-prefix lines. 2013-08-12 12:51:05 +00:00
externally-initialized-selectors.m Don't manually insert L prefixes. 2014-11-06 13:30:38 +00:00
for-in.m
forward-class-impl-metadata.m
forward-decl-param.m
forward-protocol-metadata-symbols.m Changed renaming of local symbols by inserting a dot vefore the numeric suffix 2015-05-12 16:48:43 +00:00
fp2ret.m CHECK-LABEL-ify some code gen tests to improve diagnostic experience when tests fail. 2013-08-15 06:47:53 +00:00
fpret.m CHECK-LABEL-ify some code gen tests to improve diagnostic experience when tests fail. 2013-08-15 06:47:53 +00:00
function-decay.m
gc-weak-attribute.m
gc.m Update Clang tests to handle explicitly typed load changes in LLVM. 2015-02-27 21:19:58 +00:00
getter-property-mismatch.m Objective-C [IRGen]. Generator a tail call to objc_getProperty() in 2014-01-30 00:16:39 +00:00
getter-property-type-mismatch.m objective-c: fix a sema and IRGen crash when property 2012-05-29 19:56:01 +00:00
gnu-exceptions.m Update clang to take into account the changes to personality fns 2015-06-17 20:53:19 +00:00
hidden-visibility.m Revert "Use private linkage for remaining GlobalVariables with private names." 2014-03-06 18:54:12 +00:00
hidden.m
id-isa-codegen.m Update Clang tests to handle explicitly typed load changes in LLVM. 2015-02-27 21:19:58 +00:00
illegal-UTF8.m
image-info.m IR: Make metadata typeless in assembly, clang side 2014-12-15 19:10:08 +00:00
implicit-objc_msgSend.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
implicit-property.m
instance-method-metadata.m clang/test: REQUIRES: s/x86-64-registered-target/x86-registered-target/ 2013-12-04 03:41:33 +00:00
interface-layout-64.m Use private linkage for globals we already name with \01L and \01l. 2014-02-27 19:01:11 +00:00
interface.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
ivar-base-as-invariant-load.m Update Clang tests to handle explicitly typed load changes in LLVM. 2015-02-27 21:19:58 +00:00
ivar-invariant.m Update Clang tests to handle explicitly typed load changes in LLVM. 2015-02-27 21:19:58 +00:00
ivar-layout-64-bitfields.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
ivar-layout-64.m Don't manually insert L prefixes. 2014-11-06 13:30:38 +00:00
ivar-layout-array0-struct.m Changed renaming of local symbols by inserting a dot vefore the numeric suffix 2015-05-12 16:48:43 +00:00
ivar-layout-no-optimize.m Changed renaming of local symbols by inserting a dot vefore the numeric suffix 2015-05-12 16:48:43 +00:00
ivar-layout-nonfragile-abi2.m
ivars.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
layout-bitfield-crash.m Don't need to specify the abi as it's the default. 2012-07-20 17:42:31 +00:00
link-errors.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
local-static-block.m Changed renaming of local symbols by inserting a dot vefore the numeric suffix 2015-05-12 16:48:43 +00:00
mangle-blocks.m Changed renaming of local symbols by inserting a dot vefore the numeric suffix 2015-05-12 16:48:43 +00:00
message-arrays.m
messages-2.m Update Clang tests to handle explicitly typed load changes in LLVM. 2015-02-27 21:19:58 +00:00
messages.m Rename the GCC Objective-C runtime to gcc from gnu-fragile and the GNUstep 2012-07-03 20:49:52 +00:00
metadata-symbols-32.m Don't manually insert L prefixes. 2014-11-06 13:30:38 +00:00
metadata-symbols-64.m Changed renaming of local symbols by inserting a dot vefore the numeric suffix 2015-05-12 16:48:43 +00:00
metadata_symbols.m Don't manually insert L prefixes. 2014-11-06 13:30:38 +00:00
misc-atomic-property.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
mrr-autorelease.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
mrr-captured-block-var-inlined-layout.m Don't pass -O0 to clang_cc1, it is the default. 2013-09-04 04:12:25 +00:00
nested-rethrow.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
newproperty-nested-synthesis-1.m clang/test: [PR8833] Introduce the feature "LP64" to suppress LLP64-incompatible tests. 2012-09-12 10:45:40 +00:00
next-objc-dispatch.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
no-category-class.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
no-sanitize.m Implement no_sanitize attribute. 2015-05-15 18:33:32 +00:00
no-vararg-messaging.m clang/test: REQUIRES: s/x86-64-registered-target/x86-registered-target/ 2013-12-04 03:41:33 +00:00
non-lazy-classes.m Don't manually insert L prefixes. 2014-11-06 13:30:38 +00:00
nonlazy-msgSend.m Reapply r176133 with testcase fixes. 2013-02-27 00:06:04 +00:00
ns-constant-strings.m Changed renaming of local symbols by inserting a dot vefore the numeric suffix 2015-05-12 16:48:43 +00:00
ns_consume_null_check.m Update Clang tests to handle explicitly typed load changes in LLVM. 2015-02-27 21:19:58 +00:00
null-objc-empty-vtable.m ObjectiveC IRGen. Replace _objc_empty_vtable pointer in Objective-C 2013-10-24 17:40:28 +00:00
objc-align.m Don't manually insert L prefixes. 2014-11-06 13:30:38 +00:00
objc-arc-container-subscripting.m Update to use references to attribute groups instead of listing the attributes on the call/invoke instructions. 2013-02-22 09:10:20 +00:00
objc-asm-attribute-neg-test.m Objective-C. Introducing __attribute__((objc_runtime_name("runtimename")) 2014-07-16 16:16:04 +00:00
objc-asm-attribute-test.m Honor the objc_runtime_name attribute when encoding class/protocol names. 2015-06-16 21:04:55 +00:00
objc-assign-ivar.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
objc-container-subscripting-1.m Changed renaming of local symbols by inserting a dot vefore the numeric suffix 2015-05-12 16:48:43 +00:00
objc-container-subscripting.m Add clang support for new Objective-C literal syntax for NSDictionary, NSArray, 2012-03-06 20:05:56 +00:00
objc-dictionary-literal.m Add clang support for new Objective-C literal syntax for NSDictionary, NSArray, 2012-03-06 20:05:56 +00:00
objc-fixed-enum.m DebugInfo: Metadata constructs now start with DI* 2015-04-29 16:40:08 +00:00
objc-gc-aggr-assign.m Fix FileCheck --check-prefix lines. 2013-08-12 12:51:05 +00:00
objc-literal-debugger-test.m Reapply r176133 with testcase fixes. 2013-02-27 00:06:04 +00:00
objc-literal-tests.m Reapply r176133 with testcase fixes. 2013-02-27 00:06:04 +00:00
objc-read-weak-byref.m Check IR on this test. 2013-12-03 14:46:31 +00:00
objc2-assign-global.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
objc2-ivar-assign.m clang/test/CodeGenObjC: [PR13820] Suppress LLP64-incompatible tests. 2012-09-12 10:45:52 +00:00
objc2-legacy-dispatch.m Account for calling convention specifiers in function definitions in IR test cases 2015-06-29 17:29:50 +00:00
objc2-new-gc-api-strongcast.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
objc2-no-strong-cast.m
objc2-no-write-barrier.m Replace 'grep foo | count 0' with 'not grep foo'. 2013-07-04 15:22:16 +00:00
objc2-nonfragile-abi-impl.m
objc2-property-encode.m
objc2-protocol-enc.m
objc2-protocol-metadata.m [Objective-C metadata patch]. Patch to allocate one more space for 2015-03-31 22:22:40 +00:00
objc2-retain-codegen.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
objc2-strong-cast-1.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
objc2-strong-cast-block-import.m
objc2-strong-cast.m
objc2-weak-assign.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
objc2-weak-block-call.m Fix broken RUN lines 2014-02-16 07:28:32 +00:00
objc2-weak-compare.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
objc2-weak-import-attribute.m Fix broken CHECK lines 2014-02-16 07:29:41 +00:00
objc2-weak-ivar-debug.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
objc2-weak-ivar.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
objc2-write-barrier-2.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
objc2-write-barrier-3.m
objc2-write-barrier-4.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
objc2-write-barrier-5.m Replace 'grep foo | count 0' with 'not grep foo'. 2013-07-04 15:22:16 +00:00
objc2-write-barrier.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
object-incr-decr-1.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
objfw.m [opaque pointer types] Explicit non-pointer type for call expressions 2015-04-16 23:25:00 +00:00
optimize-ivar-offset-load.m Update Clang tests to handle explicitly typed load changes in LLVM. 2015-02-27 21:19:58 +00:00
optimized-setter-ios-device.m Have the driver and the target code agree on what the default ABI 2014-12-05 01:06:59 +00:00
optimized-setter.m Reapply r170344, this time without forgetting to commit the header changes. 2012-12-17 18:54:24 +00:00
overloadable.m Remove the -cxx-abi command-line flag. 2014-01-14 19:35:09 +00:00
parameterized_classes.m Substitute type arguments into uses of Objective-C interface members. 2015-07-07 03:57:53 +00:00
predefined-expr.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
private-extern-selector-reference.m Don't manually insert L prefixes. 2014-11-06 13:30:38 +00:00
prop-metadata-gnu.m GNUstep runtime version default to 1.6, generate correct property attribute 2012-10-16 15:11:55 +00:00
property-aggregate.m
property-agrr-getter.m
property-array-type.m Update Clang tests to handle explicitly typed load changes in LLVM. 2015-02-27 21:19:58 +00:00
property-category-impl.m Use private linkage for globals we already name with \01L and \01l. 2014-02-27 19:01:11 +00:00
property-complex.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
property-dbg.m Use an Itanium triple in DWARF debug info tests 2014-01-30 01:01:36 +00:00
property-getter-dot-syntax.m
property-incr-decr-1.m
property-list-in-class.m Use private linkage for globals we already name with \01L and \01l. 2014-02-27 19:01:11 +00:00
property-ref-cast-to-void.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
property-section-attribute.m ObjectiveC. support "section" attribute on properties 2013-12-18 23:09:57 +00:00
property-setter-attr.m
property-type-mismatch.m Changed renaming of local symbols by inserting a dot vefore the numeric suffix 2015-05-12 16:48:43 +00:00
property.m [opaque pointer types] Explicit non-pointer type for call expressions 2015-04-16 23:25:00 +00:00
protocol-in-extended-class.m clang/test: REQUIRES: s/x86-64-registered-target/x86-registered-target/ 2013-12-04 03:41:33 +00:00
protocol-property-synth.m
protocols-lazy.m Replace 'grep foo | count 0' with 'not grep foo'. 2013-07-04 15:22:16 +00:00
protocols.m
rdr-6732143-dangling-block-reference.m Restructure how the driver communicates information about the 2012-06-20 06:18:46 +00:00
related-result-type.m Account for calling convention specifiers in function definitions in IR test cases 2015-06-29 17:29:50 +00:00
reorder-synthesized-ivars.m Don't manually insert L prefixes. 2014-11-06 13:30:38 +00:00
return-objc-object.mm Mark C++ reference parameters as dereferenceable 2014-07-18 15:52:10 +00:00
runtime-fns.m
sel-as-builtin-type.m
selector-ref-invariance.m Update Clang tests to handle explicitly typed load changes in LLVM. 2015-02-27 21:19:58 +00:00
simplify-exceptions.mm
stand-alone-implementation.m
stret-1.m ARM64: initial clang support commit. 2014-03-29 15:09:45 +00:00
stret.m ARM64: initial clang support commit. 2014-03-29 15:09:45 +00:00
stret_lookup.m [opaque pointer types] Explicit non-pointer type for call expressions 2015-04-16 23:25:00 +00:00
super-classmethod-category.m
super-dotsyntax-property.m
super-dotsyntax-struct-property.m
super-message-fragileabi.m Test case updates for explicit type parameter to the gep operator 2015-03-13 18:21:46 +00:00
synchronized.m Adjust clang side tests effected by 239795 before reapplying said change 2015-06-16 20:24:06 +00:00
synthesize_ivar-cont-class.m FileCheck-ify some clang grep tests that use double quotes 2013-04-10 21:10:39 +00:00
synthesize_ivar.m clang/test/CodeGenObjC: [PR13820] Suppress LLP64-incompatible tests. 2012-09-12 10:45:52 +00:00
tentative-cfconstantstring.m [opaque pointer types] Explicit non-pointer type for call expressions 2015-04-16 23:25:00 +00:00
terminate.m Update clang to take into account the changes to personality fns 2015-06-17 20:53:19 +00:00
try.m clang/test: REQUIRES: s/x86-64-registered-target/x86-registered-target/ 2013-12-04 03:41:33 +00:00
undefined-protocol.m clang/test: [PR13820] Suppress LLP64-incompatible tests for ObjC with +Asserts. 2012-09-12 14:26:42 +00:00
undefined-protocol2.m Allow protocols to be just declared. 2014-09-12 20:14:20 +00:00
unname-bf-metadata.m
unoptimized-setter.m Un-revert r164907 and r164902 (+ follow-ups), 10.6 build fix to follow. 2012-10-15 22:23:53 +00:00
variadic-sends.m [opaque pointer types] Explicit non-pointer type for call expressions 2015-04-16 23:25:00 +00:00
weak-metaclass-visibility.m Improve test of my previous patch. rdar://17633301 2014-07-15 17:47:58 +00:00
x86_64-struct-return-gc.m CHECK-LABEL-ify some code gen tests to improve diagnostic experience when tests fail. 2013-08-15 06:47:53 +00:00