39 lines
		
	
	
		
			840 B
		
	
	
	
		
			Objective-C
		
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			840 B
		
	
	
	
		
			Objective-C
		
	
	
	
| // RUN: %clang_cc1 -triple x86_64-apple-macosx10.14.0 -emit-llvm %s -o - | FileCheck %s
 | |
| 
 | |
| // CHECK: @"OBJC_IVAR_$_StaticLayout.static_layout_ivar" = hidden constant i64 20
 | |
| // CHECK: @"OBJC_IVAR_$_NotStaticLayout.not_static_layout_ivar" = hidden global i64 12
 | |
| 
 | |
| @interface NSObject {
 | |
|   int these, will, never, change, ever;
 | |
| }
 | |
| @end
 | |
| 
 | |
| @interface StaticLayout : NSObject
 | |
| @end
 | |
| 
 | |
| @implementation StaticLayout {
 | |
|   int static_layout_ivar;
 | |
| }
 | |
| -(void)meth {
 | |
|   static_layout_ivar = 0;
 | |
|   // CHECK-NOT: load i64, i64* @"OBJC_IVAR_$_StaticLayout
 | |
| }
 | |
| @end
 | |
| 
 | |
| @interface NotNSObject {
 | |
|   int these, might, change;
 | |
| }
 | |
| @end
 | |
| 
 | |
| @interface NotStaticLayout : NotNSObject
 | |
| @end
 | |
| 
 | |
| @implementation NotStaticLayout {
 | |
|   int not_static_layout_ivar;
 | |
| }
 | |
| -(void)meth {
 | |
|   not_static_layout_ivar = 0;
 | |
|   // CHECK: load i64, i64* @"OBJC_IVAR_$_NotStaticLayout.not_static_layout_ivar
 | |
| }
 | |
| @end
 |