blob: 0633565a6d9173e5934e86c7f7cf8ac9f593c45e [file] [edit]
// RUN: %clang_cc1 -triple i386-unknown-unknown -emit-llvm -load-bool-from-mem=strict -O1 -o - %s | FileCheck %s -check-prefixes=CHECK,CHECK-UNDEF
// RUN: %clang_cc1 -triple i386-unknown-unknown -emit-llvm -load-bool-from-mem=strict -O0 -o - %s | FileCheck %s -check-prefixes=CHECK,CHECK-NONZERO
// RUN: %clang_cc1 -triple i386-unknown-unknown -emit-llvm -load-bool-from-mem=nonstrict -o - %s | FileCheck %s -check-prefixes=CHECK,CHECK-NONZERO
// RUN: %clang_cc1 -triple i386-unknown-unknown -emit-llvm -load-bool-from-mem=truncate -o - %s | FileCheck %s -check-prefixes=CHECK,CHECK-TRUNCATE
// RUN: %clang_cc1 -triple i386-unknown-unknown -emit-llvm -load-bool-from-mem=nonzero -o - %s | FileCheck %s -check-prefixes=CHECK,CHECK-NONZERO
@interface BoolProp
@property (nonatomic) _Bool b;
@end
@implementation BoolProp
@synthesize b;
@end
// CHECK-LABEL: -[BoolProp b]
// CHECK-UNDEF: [[BOOL:%.+]] = trunc nuw i8 %{{.+}} to i1
// CHECK-TRUNCATE: [[BOOL:%.+]] = trunc i8 %{{.+}} to i1
// CHECK-NONZERO: [[BOOL:%.+]] = icmp ne i8 %{{.+}}, 0
// CHECK: ret i1 [[BOOL]]