Optimized macro codegen on simpler code.

This commit is contained in:
Christoffer Lerno
2021-11-18 00:02:44 +01:00
committed by Christoffer Lerno
parent 7b04e7cf85
commit bfde58b9a5
8 changed files with 283 additions and 314 deletions

View File

@@ -39,7 +39,6 @@ entry:
%b = alloca i32, align 4
%a1 = alloca i32 (i32)*, align 8
%b2 = alloca i32, align 4
%blockret = alloca i32, align 4
store i32 2, i32* %a, align 4
store i32 3, i32* %b, align 4
store i32 (i32)* @example.square, i32 (i32)** %a1, align 8
@@ -47,14 +46,9 @@ entry:
%0 = load i32 (i32)*, i32 (i32)** %a1, align 8
%1 = load i32, i32* %b2, align 4
%2 = call i32 %0(i32 %1)
store i32 %2, i32* %blockret, align 4
br label %expr_block.exit
expr_block.exit: ; preds = %entry
%3 = load i32, i32* %blockret, align 4
%4 = load i32, i32* %a, align 4
%add = add i32 %3, %4
%5 = load i32, i32* %b, align 4
%add3 = add i32 %add, %5
%3 = load i32, i32* %a, align 4
%add = add i32 %2, %3
%4 = load i32, i32* %b, align 4
%add3 = add i32 %add, %4
ret i32 %add3
}