Macros generating lambdas now actually is a thing.

This commit is contained in:
Christoffer Lerno
2023-06-22 23:42:40 +02:00
parent d90fa5e292
commit 0eee9daf1d
11 changed files with 365 additions and 49 deletions

View File

@@ -54,28 +54,26 @@ declare i32 @"bar.get_callback$lambda1"()
// #expect: foo.ll
define i32 @"foo.get_callback$lambda1"() #0 {
%0 = call i32 @"bar.get_callback2$lambda2"()
define i32 @"foo.get_callback2$lambda2"() #0 {
%1 = load i32, ptr @foo.xz, align 4
define i32 @"foo.get_callback$lambda1"() #0 {
%0 = call i32 @"bar.get_callback2$lambda2"()
declare i32 @"bar.get_callback2$lambda2"()
// #expect: bar.ll
define i32 @"bar.get_callback$lambda1"() #0 {
entry:
%0 = call i32 @"foo.get_callback$lambda1"()
ret i32 %0
}
define i32 @"bar.get_callback2$lambda2"() #0 {
entry:
%0 = call i32 @"foo.get_callback2$lambda2"()
ret i32 %0
}
define i32 @"bar.get_callback$lambda1"() #0 {
entry:
%0 = call i32 @"foo.get_callback$lambda1"()
ret i32 %0
declare i32 @"foo.get_callback$lambda1"()
declare i32 @"foo.get_callback2$lambda2"()
declare i32 @"foo.get_callback2$lambda2"() #0
declare i32 @"foo.get_callback$lambda1"() #0