diff options
Diffstat (limited to 'llvm/test/CodeGen/ARM/fpconv.ll')
-rw-r--r-- | llvm/test/CodeGen/ARM/fpconv.ll | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/ARM/fpconv.ll b/llvm/test/CodeGen/ARM/fpconv.ll new file mode 100644 index 00000000000..4ac542f0fdb --- /dev/null +++ b/llvm/test/CodeGen/ARM/fpconv.ll @@ -0,0 +1,71 @@ +; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm && +; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep fcvtsd && +; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep fcvtds && +; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep ftosis && +; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep ftouis && +; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep ftosid && +; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep ftouid && +; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep fsitos && +; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep fsitod && +; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep fuitos && +; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep fuitod + +float %f1(double %x) { +entry: + %tmp1 = cast double %x to float + ret float %tmp1 +} + +double %f2(float %x) { +entry: + %tmp1 = cast float %x to double + ret double %tmp1 +} + +int %f3(float %x) { +entry: + %tmp = cast float %x to int + ret int %tmp +} + +uint %f4(float %x) { +entry: + %tmp = cast float %x to uint + ret uint %tmp +} + +int %f5(double %x) { +entry: + %tmp = cast double %x to int + ret int %tmp +} + +uint %f6(double %x) { +entry: + %tmp = cast double %x to uint + ret uint %tmp +} + +float %f7(int %a) { +entry: + %tmp = cast int %a to float + ret float %tmp +} + +double %f8(int %a) { +entry: + %tmp = cast int %a to double + ret double %tmp +} + +float %f9(uint %a) { +entry: + %tmp = cast uint %a to float + ret float %tmp +} + +double %f10(uint %a) { +entry: + %tmp = cast uint %a to double + ret double %tmp +} |