about summary refs log tree commit diff homepage
path: root/test/Concrete/InvokeAndReturn.ll
blob: f73c242ace80ef4fe4804fd5f13f11a143e573e7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
declare void @print_i32(i32)

define i8 @sum(i8 %a, i8 %b) {
	%c = add i8 %a, %b
	ret i8 %c
}

define i32 @main() {
	invoke i8 @sum(i8 1, i8 2) 
		to label %continue
		unwind label %error
continue:
	call void @print_i32(i32 1)
	ret i32 0
error:
	call void @print_i32(i32 0)
	ret i32 0
}