mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2024-12-22 15:31:00 +00:00
364741de30
objc_begin_catch/objc_end_catch are specific to the Itanium ABI, so we should be using an Itanium triple for this test. Additionally, while I'm here, convert the run line to invoke the compiler directly rather than going through the driver. llvm-svn: 332777
26 lines
564 B
Objective-C
26 lines
564 B
Objective-C
// RUN: %clang_cc1 -triple thumbv7--windows-itanium -fobjc-runtime=ios -O1 -fexceptions -fobjc-exceptions -emit-llvm %s -o - | FileCheck %s
|
|
// REQUIRES: arm-registered-target
|
|
|
|
void (*f)(id);
|
|
void (*g)(void);
|
|
void h(void);
|
|
|
|
@interface NSNumber
|
|
+ (NSNumber *)numberWithInt:(int)i;
|
|
@end
|
|
|
|
void i(void) {
|
|
@try {
|
|
@throw(@1);
|
|
} @catch (id i) {
|
|
(*f)(i);
|
|
(*g)();
|
|
}
|
|
}
|
|
|
|
// CHECK: call arm_aapcs_vfpcc i8* @objc_begin_catch
|
|
// CHECK: call arm_aapcs_vfpcc void @objc_end_catch
|
|
// CHECK-NOT: call i8* @objc_begin_catch
|
|
// CHECK-NOT: call void @objc_end_catch
|
|
|