|
2 | 2 | // RUN: FileCheck --input-file=%t.ll %s
|
3 | 3 |
|
4 | 4 | module {
|
5 |
| - cir.func @test(%arg0 : !cir.float) { |
| 5 | + cir.func @test(%arg0 : !cir.float, %arg1 : !cir.vector<!cir.double x 2>, %arg2 : !cir.vector<!cir.float x 4>) { |
6 | 6 | %1 = cir.cos %arg0 : !cir.float
|
7 | 7 | // CHECK: llvm.intr.cos(%arg0) : (f32) -> f32
|
| 8 | + |
| 9 | + %101 = cir.cos %arg1 : !cir.vector<!cir.double x 2> |
| 10 | + // CHECK: llvm.intr.cos(%arg1) : (vector<2xf64>) -> vector<2xf64> |
8 | 11 |
|
| 12 | + %201 = cir.cos %arg2 : !cir.vector<!cir.float x 4> |
| 13 | + // CHECK: llvm.intr.cos(%arg2) : (vector<4xf32>) -> vector<4xf32> |
| 14 | + |
9 | 15 | %2 = cir.ceil %arg0 : !cir.float
|
10 | 16 | // CHECK: llvm.intr.ceil(%arg0) : (f32) -> f32
|
11 | 17 |
|
| 18 | + %102 = cir.ceil %arg1 : !cir.vector<!cir.double x 2> |
| 19 | + // CHECK: llvm.intr.ceil(%arg1) : (vector<2xf64>) -> vector<2xf64> |
| 20 | + |
| 21 | + %202 = cir.ceil %arg2 : !cir.vector<!cir.float x 4> |
| 22 | + // CHECK: llvm.intr.ceil(%arg2) : (vector<4xf32>) -> vector<4xf32> |
| 23 | + |
12 | 24 | %3 = cir.exp %arg0 : !cir.float
|
13 | 25 | // CHECK: llvm.intr.exp(%arg0) : (f32) -> f32
|
14 | 26 |
|
| 27 | + %103 = cir.exp %arg1 : !cir.vector<!cir.double x 2> |
| 28 | + // CHECK: llvm.intr.exp(%arg1) : (vector<2xf64>) -> vector<2xf64> |
| 29 | + |
| 30 | + %203 = cir.exp %arg2 : !cir.vector<!cir.float x 4> |
| 31 | + // CHECK: llvm.intr.exp(%arg2) : (vector<4xf32>) -> vector<4xf32> |
| 32 | + |
15 | 33 | %4 = cir.exp2 %arg0 : !cir.float
|
16 | 34 | // CHECK: llvm.intr.exp2(%arg0) : (f32) -> f32
|
17 | 35 |
|
| 36 | + %104 = cir.exp2 %arg1 : !cir.vector<!cir.double x 2> |
| 37 | + // CHECK: llvm.intr.exp2(%arg1) : (vector<2xf64>) -> vector<2xf64> |
| 38 | + |
| 39 | + %204 = cir.exp2 %arg2 : !cir.vector<!cir.float x 4> |
| 40 | + // CHECK: llvm.intr.exp2(%arg2) : (vector<4xf32>) -> vector<4xf32> |
| 41 | + |
18 | 42 | %5 = cir.fabs %arg0 : !cir.float
|
19 | 43 | // CHECK: llvm.intr.fabs(%arg0) : (f32) -> f32
|
20 | 44 |
|
| 45 | + %105 = cir.fabs %arg1 : !cir.vector<!cir.double x 2> |
| 46 | + // CHECK: llvm.intr.fabs(%arg1) : (vector<2xf64>) -> vector<2xf64> |
| 47 | + |
| 48 | + %205 = cir.fabs %arg2 : !cir.vector<!cir.float x 4> |
| 49 | + // CHECK: llvm.intr.fabs(%arg2) : (vector<4xf32>) -> vector<4xf32> |
| 50 | + |
21 | 51 | %6 = cir.floor %arg0 : !cir.float
|
22 | 52 | // CHECK: llvm.intr.floor(%arg0) : (f32) -> f32
|
23 | 53 |
|
| 54 | + %106 = cir.floor %arg1 : !cir.vector<!cir.double x 2> |
| 55 | + // CHECK: llvm.intr.floor(%arg1) : (vector<2xf64>) -> vector<2xf64> |
| 56 | + |
| 57 | + %206 = cir.floor %arg2 : !cir.vector<!cir.float x 4> |
| 58 | + // CHECK: llvm.intr.floor(%arg2) : (vector<4xf32>) -> vector<4xf32> |
| 59 | + |
24 | 60 | %7 = cir.log %arg0 : !cir.float
|
25 | 61 | // CHECK: llvm.intr.log(%arg0) : (f32) -> f32
|
26 | 62 |
|
| 63 | + %107 = cir.log %arg1 : !cir.vector<!cir.double x 2> |
| 64 | + // CHECK: llvm.intr.log(%arg1) : (vector<2xf64>) -> vector<2xf64> |
| 65 | + |
| 66 | + %207 = cir.log %arg2 : !cir.vector<!cir.float x 4> |
| 67 | + // CHECK: llvm.intr.log(%arg2) : (vector<4xf32>) -> vector<4xf32> |
| 68 | + |
27 | 69 | %8 = cir.log10 %arg0 : !cir.float
|
28 | 70 | // CHECK: llvm.intr.log10(%arg0) : (f32) -> f32
|
29 | 71 |
|
| 72 | + %108 = cir.log10 %arg1 : !cir.vector<!cir.double x 2> |
| 73 | + // CHECK: llvm.intr.log10(%arg1) : (vector<2xf64>) -> vector<2xf64> |
| 74 | + |
| 75 | + %208 = cir.log10 %arg2 : !cir.vector<!cir.float x 4> |
| 76 | + // CHECK: llvm.intr.log10(%arg2) : (vector<4xf32>) -> vector<4xf32> |
| 77 | + |
30 | 78 | %9 = cir.log2 %arg0 : !cir.float
|
31 | 79 | // CHECK: llvm.intr.log2(%arg0) : (f32) -> f32
|
32 | 80 |
|
| 81 | + %109 = cir.log2 %arg1 : !cir.vector<!cir.double x 2> |
| 82 | + // CHECK: llvm.intr.log2(%arg1) : (vector<2xf64>) -> vector<2xf64> |
| 83 | + |
| 84 | + %209 = cir.log2 %arg2 : !cir.vector<!cir.float x 4> |
| 85 | + // CHECK: llvm.intr.log2(%arg2) : (vector<4xf32>) -> vector<4xf32> |
| 86 | + |
33 | 87 | %10 = cir.nearbyint %arg0 : !cir.float
|
34 | 88 | // CHECK: llvm.intr.nearbyint(%arg0) : (f32) -> f32
|
35 | 89 |
|
| 90 | + %110 = cir.nearbyint %arg1 : !cir.vector<!cir.double x 2> |
| 91 | + // CHECK: llvm.intr.nearbyint(%arg1) : (vector<2xf64>) -> vector<2xf64> |
| 92 | + |
| 93 | + %210 = cir.nearbyint %arg2 : !cir.vector<!cir.float x 4> |
| 94 | + // CHECK: llvm.intr.nearbyint(%arg2) : (vector<4xf32>) -> vector<4xf32> |
| 95 | + |
36 | 96 | %11 = cir.rint %arg0 : !cir.float
|
37 | 97 | // CHECK: llvm.intr.rint(%arg0) : (f32) -> f32
|
38 | 98 |
|
| 99 | + %111 = cir.rint %arg1 : !cir.vector<!cir.double x 2> |
| 100 | + // CHECK: llvm.intr.rint(%arg1) : (vector<2xf64>) -> vector<2xf64> |
| 101 | + |
| 102 | + %211 = cir.rint %arg2 : !cir.vector<!cir.float x 4> |
| 103 | + // CHECK: llvm.intr.rint(%arg2) : (vector<4xf32>) -> vector<4xf32> |
| 104 | + |
39 | 105 | %12 = cir.round %arg0 : !cir.float
|
40 | 106 | // CHECK: llvm.intr.round(%arg0) : (f32) -> f32
|
41 | 107 |
|
| 108 | + %112 = cir.round %arg1 : !cir.vector<!cir.double x 2> |
| 109 | + // CHECK: llvm.intr.round(%arg1) : (vector<2xf64>) -> vector<2xf64> |
| 110 | + |
| 111 | + %212 = cir.round %arg2 : !cir.vector<!cir.float x 4> |
| 112 | + // CHECK: llvm.intr.round(%arg2) : (vector<4xf32>) -> vector<4xf32> |
| 113 | + |
42 | 114 | %13 = cir.sin %arg0 : !cir.float
|
43 | 115 | // CHECK: llvm.intr.sin(%arg0) : (f32) -> f32
|
44 | 116 |
|
| 117 | + %113 = cir.sin %arg1 : !cir.vector<!cir.double x 2> |
| 118 | + // CHECK: llvm.intr.sin(%arg1) : (vector<2xf64>) -> vector<2xf64> |
| 119 | + |
| 120 | + %213 = cir.sin %arg2 : !cir.vector<!cir.float x 4> |
| 121 | + // CHECK: llvm.intr.sin(%arg2) : (vector<4xf32>) -> vector<4xf32> |
| 122 | + |
45 | 123 | %14 = cir.sqrt %arg0 : !cir.float
|
46 | 124 | // CHECK: llvm.intr.sqrt(%arg0) : (f32) -> f32
|
47 | 125 |
|
| 126 | + %114 = cir.sqrt %arg1 : !cir.vector<!cir.double x 2> |
| 127 | + // CHECK: llvm.intr.sqrt(%arg1) : (vector<2xf64>) -> vector<2xf64> |
| 128 | + |
| 129 | + %214 = cir.sqrt %arg2 : !cir.vector<!cir.float x 4> |
| 130 | + // CHECK: llvm.intr.sqrt(%arg2) : (vector<4xf32>) -> vector<4xf32> |
| 131 | + |
48 | 132 | cir.return
|
49 | 133 | }
|
50 | 134 | }
|
0 commit comments