blob: eaadbbae0a7c909db37f34abb8540eb8ce25cad2 [file] [log] [blame]
Eli Benderskya66a1852012-01-16 08:56:09 +00001; RUN: %lli %s > /dev/null
Jim Grosbach7ece6022010-12-02 20:20:32 +00002; XFAIL: arm
Eli Benderskya66a1852012-01-16 08:56:09 +00003; XFAIL: mcjit
Tanya Lattnere9789ef2004-11-06 23:32:43 +00004
Tanya Lattnerceca1942008-03-10 07:21:50 +00005declare void @exit(i32)
Chris Lattnerac676be2002-12-03 20:30:03 +00006
Tanya Lattnerceca1942008-03-10 07:21:50 +00007define i32 @test(i8 %C, i16 %S) {
8 %X = trunc i16 %S to i8 ; <i8> [#uses=1]
9 %Y = zext i8 %X to i32 ; <i32> [#uses=1]
10 ret i32 %Y
Chris Lattner6cc36d42002-12-28 20:01:07 +000011}
Chris Lattnere4adeb42002-12-13 14:15:20 +000012
Tanya Lattnerceca1942008-03-10 07:21:50 +000013define void @FP(void (i32)* %F) {
14 %X = call i32 @test( i8 123, i16 1024 ) ; <i32> [#uses=1]
15 call void %F( i32 %X )
Chris Lattnere4adeb42002-12-13 14:15:20 +000016 ret void
17}
18
Tanya Lattnerceca1942008-03-10 07:21:50 +000019define i32 @main() {
20 call void @FP( void (i32)* @exit )
21 ret i32 1
Chris Lattnerac676be2002-12-03 20:30:03 +000022}
Tanya Lattnerceca1942008-03-10 07:21:50 +000023