diff options
author | Reid Spencer <rspencer@reidspencer.com> | 2007-05-04 03:35:17 +0000 |
---|---|---|
committer | Reid Spencer <rspencer@reidspencer.com> | 2007-05-04 03:35:17 +0000 |
commit | 955162aaae6ab8e1f12ae0ee2aed5d337205d1ef (patch) | |
tree | 92032dcab3c0e09c8debd1848f66a36b249461df | |
parent | fee5a3752afb3b94715c55fad007fe33ac974650 (diff) | |
download | bcm5719-llvm-955162aaae6ab8e1f12ae0ee2aed5d337205d1ef.tar.gz bcm5719-llvm-955162aaae6ab8e1f12ae0ee2aed5d337205d1ef.zip |
Add a test case for testing the LLI interpreter wrt bitcast of fp to integer.
llvm-svn: 36732
-rw-r--r-- | llvm/test/ExecutionEngine/fpbitcast.ll | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/llvm/test/ExecutionEngine/fpbitcast.ll b/llvm/test/ExecutionEngine/fpbitcast.ll new file mode 100644 index 00000000000..34ca129ead6 --- /dev/null +++ b/llvm/test/ExecutionEngine/fpbitcast.ll @@ -0,0 +1,21 @@ +; RUN: llvm-as < %s > %t.bc +; RUN: lli -force-interpreter=true %t.bc | grep 40091eb8 +; +define i32 @test(double %x) { +entry: + %x46.i = bitcast double %x to i64 + %tmp343.i = lshr i64 %x46.i, 32 + %tmp344.i = trunc i64 %tmp343.i to i32 + ret i32 %tmp344.i +} + +define i32 @main() +{ + %res = call i32 @test(double 3.14) + %ptr = getelementptr [4 x i8]* @format, i32 0, i32 0 + call i32 (i8*,...)* @printf(i8* %ptr, i32 %res) + ret i32 0 +} + +declare i32 @printf(i8*, ...) +@format = internal constant [4 x i8] c"%x\0A\00" |