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

@@ -29,17 +29,17 @@ fn void main()
/* #expect: test.ll
store ptr @"test.test$lambda1", ptr %z, align 8
%1 = call i32 %0(i32 3)
store ptr @"test.test$lambda2", ptr %z3, align 8
%7 = call double %6(double 3.300000e+00)
store ptr @"test.test$lambda2", ptr %z7, align 8
%13 = call double %12(double 3.300000e+00)
%18 = call i32 @"test.test2$lambda3"(i32 3)
%23 = call i32 @"test.test2$lambda3"(i32 3)
%28 = call double @"test.test2$lambda4"(double 3.300000e+00)
store ptr @"test.test$lambda1", ptr %z, align 8
%1 = call i32 %0(i32 3)
store ptr @"test.test$lambda2", ptr %z3, align 8
%7 = call double %6(double 3.300000e+00)
store ptr @"test.test$lambda2", ptr %z7, align 8
%13 = call double %12(double 3.300000e+00)
%18 = call i32 @"test.test2$lambda3"(i32 3)
%23 = call i32 @"test.test2$lambda3"(i32 3)
%28 = call double @"test.test2$lambda4"(double 3.300000e+00)
define internal double @"test.test2$lambda4"(double %0) #0 {
define internal i32 @"test.test2$lambda3"(i32 %0) #0 {
define internal double @"test.test$lambda2"(double %0) #0 {
define internal i32 @"test.test$lambda1"(i32 %0) #0 {
define internal i32 @"test.test$lambda1"(i32 %0) #0 {
define internal double @"test.test$lambda2"(double %0) #0 {
define internal i32 @"test.test2$lambda3"(i32 %0) #0 {
define internal double @"test.test2$lambda4"(double %0) #0 {