Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 1 | ; RUN: llvm-as < %s | llc -march=arm -mattr=+vfp2 > %t |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 2 | ; RUN: grep fcvtsd %t |
3 | ; RUN: grep fcvtds %t | ||||
4 | ; RUN: grep ftosizs %t | ||||
5 | ; RUN: grep ftouizs %t | ||||
6 | ; RUN: grep ftosizd %t | ||||
7 | ; RUN: grep ftouizd %t | ||||
8 | ; RUN: grep fsitos %t | ||||
9 | ; RUN: grep fsitod %t | ||||
10 | ; RUN: grep fuitos %t | ||||
11 | ; RUN: grep fuitod %t | ||||
Evan Cheng | a874003 | 2008-04-01 01:50:16 +0000 | [diff] [blame] | 12 | ; RUN: llvm-as < %s | llc -march=arm > %t |
13 | ; RUN: grep truncdfsf2 %t | ||||
14 | ; RUN: grep extendsfdf2 %t | ||||
15 | ; RUN: grep fixsfsi %t | ||||
16 | ; RUN: grep fixunssfsi %t | ||||
17 | ; RUN: grep fixdfsi %t | ||||
18 | ; RUN: grep fixunsdfsi %t | ||||
Evan Cheng | f99a775 | 2008-04-01 02:18:22 +0000 | [diff] [blame] | 19 | ; RUN: grep floatsisf %t |
Evan Cheng | a874003 | 2008-04-01 01:50:16 +0000 | [diff] [blame] | 20 | ; RUN: grep floatsidf %t |
Evan Cheng | f99a775 | 2008-04-01 02:18:22 +0000 | [diff] [blame] | 21 | ; RUN: grep floatunsisf %t |
22 | ; RUN: grep floatunsidf %t | ||||
Evan Cheng | a874003 | 2008-04-01 01:50:16 +0000 | [diff] [blame] | 23 | ; RUN: llvm-as < %s | llc -march=thumb |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 24 | |
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 25 | define float @f1(double %x) { |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 26 | entry: |
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 27 | %tmp1 = fptrunc double %x to float ; <float> [#uses=1] |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 28 | ret float %tmp1 |
29 | } | ||||
30 | |||||
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 31 | define double @f2(float %x) { |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 32 | entry: |
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 33 | %tmp1 = fpext float %x to double ; <double> [#uses=1] |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 34 | ret double %tmp1 |
35 | } | ||||
36 | |||||
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 37 | define i32 @f3(float %x) { |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 38 | entry: |
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 39 | %tmp = fptosi float %x to i32 ; <i32> [#uses=1] |
40 | ret i32 %tmp | ||||
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 41 | } |
42 | |||||
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 43 | define i32 @f4(float %x) { |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 44 | entry: |
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 45 | %tmp = fptoui float %x to i32 ; <i32> [#uses=1] |
46 | ret i32 %tmp | ||||
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 47 | } |
48 | |||||
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 49 | define i32 @f5(double %x) { |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 50 | entry: |
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 51 | %tmp = fptosi double %x to i32 ; <i32> [#uses=1] |
52 | ret i32 %tmp | ||||
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 53 | } |
54 | |||||
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 55 | define i32 @f6(double %x) { |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 56 | entry: |
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 57 | %tmp = fptoui double %x to i32 ; <i32> [#uses=1] |
58 | ret i32 %tmp | ||||
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 59 | } |
60 | |||||
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 61 | define float @f7(i32 %a) { |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 62 | entry: |
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 63 | %tmp = sitofp i32 %a to float ; <float> [#uses=1] |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 64 | ret float %tmp |
65 | } | ||||
66 | |||||
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 67 | define double @f8(i32 %a) { |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 68 | entry: |
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 69 | %tmp = sitofp i32 %a to double ; <double> [#uses=1] |
70 | ret double %tmp | ||||
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 71 | } |
72 | |||||
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 73 | define float @f9(i32 %a) { |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 74 | entry: |
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 75 | %tmp = uitofp i32 %a to float ; <float> [#uses=1] |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 76 | ret float %tmp |
77 | } | ||||
78 | |||||
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 79 | define double @f10(i32 %a) { |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 80 | entry: |
Tanya Lattner | 246a137 | 2008-02-17 20:02:20 +0000 | [diff] [blame] | 81 | %tmp = uitofp i32 %a to double ; <double> [#uses=1] |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 82 | ret double %tmp |
83 | } |