author | Christian Urban <christian.urban@kcl.ac.uk> |
Sat, 04 Jul 2020 16:58:12 +0100 | |
changeset 732 | c7bdd7eac4cb |
parent 701 | 681c36b2af27 |
permissions | -rw-r--r-- |
@.str = private constant [4 x i8] c"%d\0A\00" declare i32 @printf(i8*, ...) ; prints out an integer define i32 @printInt(i32 %x) { %t0 = getelementptr [4 x i8], [4 x i8]* @.str, i32 0, i32 0 call i32 (i8*, ...) @printf(i8* %t0, i32 %x) ret i32 %x } ; square function define i32 @sqr(i32 %x) { %tmp = mul i32 %x, %x ret i32 %tmp } ; main define i32 @main() { %1 = call i32 @sqr(i32 5) %2 = call i32 @printInt(i32 %1) ret i32 %1 }