1 | // RUN: %clang_cc1 -triple x86_64-pc-linux-gnu -fobjc-runtime=objfw -emit-llvm -o - %s | FileCheck %s |
2 | |
3 | // Test the ObjFW runtime. |
4 | |
5 | @interface Test0 |
6 | + (void) test; |
7 | @end |
8 | void test0(void) { |
9 | [Test0 test]; |
10 | } |
11 | // CHECK-LABEL: define void @test0() |
12 | // CHECK: [[T0:%.*]] = call i8* (i8*, i8*, ...)* @objc_msg_lookup(i8* bitcast (i64* @_OBJC_CLASS_Test0 to i8*), |
13 | // CHECK-NEXT: [[T1:%.*]] = bitcast i8* (i8*, i8*, ...)* [[T0]] to void (i8*, i8*)* |
14 | // CHECK-NEXT: call void [[T1]](i8* bitcast (i64* @_OBJC_CLASS_Test0 to i8*), |
15 | // CHECK-NEXT: ret void |
16 | |