1*f4a2713aSLionel Sambuc// RUN: %clang_cc1 -emit-llvm -o - %s | FileCheck -check-prefix=WITHOUT %s 2*f4a2713aSLionel Sambuc// RUN: %clang_cc1 -emit-llvm -o - %s -fsanitize=address | FileCheck -check-prefix=ASAN %s 3*f4a2713aSLionel Sambuc 4*f4a2713aSLionel Sambuc@interface MyClass 5*f4a2713aSLionel Sambuc+ (int) addressSafety:(int*)a; 6*f4a2713aSLionel Sambuc@end 7*f4a2713aSLionel Sambuc 8*f4a2713aSLionel Sambuc@implementation MyClass 9*f4a2713aSLionel Sambuc 10*f4a2713aSLionel Sambuc// WITHOUT: +[MyClass load]{{.*}}#0 11*f4a2713aSLionel Sambuc// ASAN: +[MyClass load]{{.*}}#0 12*f4a2713aSLionel Sambuc+(void) load { } 13*f4a2713aSLionel Sambuc 14*f4a2713aSLionel Sambuc// WITHOUT: +[MyClass addressSafety:]{{.*}}#0 15*f4a2713aSLionel Sambuc// ASAN: +[MyClass addressSafety:]{{.*}}#0 16*f4a2713aSLionel Sambuc+ (int) addressSafety:(int*)a { return *a; } 17*f4a2713aSLionel Sambuc 18*f4a2713aSLionel Sambuc@end 19*f4a2713aSLionel Sambuc 20*f4a2713aSLionel Sambuc// ASAN: attributes #0 = {{.*}}sanitize_address 21*f4a2713aSLionel Sambuc// WITHOUT-NOT: attributes #0 = {{.*}}sanitize_address 22