CS153/hw6/llprograms/sp20_hw3/log.ll
jmug 0c04936ccf Updated hw6 to a newer version
Signed-off-by: jmug <u.g.a.mariano@gmail.com>
2025-01-24 21:23:08 -08:00

17 lines
No EOL
323 B
LLVM

define i64 @log(i64 %num) {
%1 = icmp eq i64 %num, 1
br i1 %1, label %then, label %else
then:
ret i64 0
else:
%2 = lshr i64 %num, 1
%3 = call i64 @log(i64 %2)
%4 = add i64 %3, 1
ret i64 %4
}
define i64 @main(i64 %argc, i8** %arcv) {
%3 = add i64 16, 0
%1 = call i64 @log(i64 %3)
ret i64 %1
}