OLD | NEW |
1 ; This file tests casting / conversion operations that apply to vector types. | 1 ; This file tests casting / conversion operations that apply to vector types. |
2 ; bitcast operations are in vector-bitcast.ll. | 2 ; bitcast operations are in vector-bitcast.ll. |
3 | 3 |
4 ; RUN: %p2i -i %s --filetype=obj --disassemble --args -O2 | FileCheck %s | 4 ; RUN: %p2i -i %s --filetype=obj --disassemble --args -O2 | FileCheck %s |
5 ; RUN: %p2i -i %s --filetype=obj --disassemble --args -Om1 | FileCheck %s | 5 ; RUN: %p2i -i %s --filetype=obj --disassemble --args -Om1 | FileCheck %s |
6 | 6 |
7 ; sext operations | 7 ; sext operations |
8 | 8 |
9 define <16 x i8> @test_sext_v16i1_to_v16i8(<16 x i1> %arg) { | 9 define <16 x i8> @test_sext_v16i1_to_v16i8(<16 x i1> %arg) { |
10 entry: | 10 entry: |
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
126 ; CHECK-LABEL: test_fptosi_v4f32_to_v4i32 | 126 ; CHECK-LABEL: test_fptosi_v4f32_to_v4i32 |
127 ; CHECK: cvttps2dq | 127 ; CHECK: cvttps2dq |
128 } | 128 } |
129 | 129 |
130 define <4 x i32> @test_fptoui_v4f32_to_v4i32(<4 x float> %arg) { | 130 define <4 x i32> @test_fptoui_v4f32_to_v4i32(<4 x float> %arg) { |
131 entry: | 131 entry: |
132 %res = fptoui <4 x float> %arg to <4 x i32> | 132 %res = fptoui <4 x float> %arg to <4 x i32> |
133 ret <4 x i32> %res | 133 ret <4 x i32> %res |
134 | 134 |
135 ; CHECK-LABEL: test_fptoui_v4f32_to_v4i32 | 135 ; CHECK-LABEL: test_fptoui_v4f32_to_v4i32 |
136 ; CHECK: call {{.*}} R_{{.*}} Sz_fptoui_v4f32 | 136 ; CHECK: call {{.*}} R_{{.*}} __Sz_fptoui_4xi32_f32 |
137 } | 137 } |
138 | 138 |
139 ; [su]itofp operations | 139 ; [su]itofp operations |
140 | 140 |
141 define <4 x float> @test_sitofp_v4i32_to_v4f32(<4 x i32> %arg) { | 141 define <4 x float> @test_sitofp_v4i32_to_v4f32(<4 x i32> %arg) { |
142 entry: | 142 entry: |
143 %res = sitofp <4 x i32> %arg to <4 x float> | 143 %res = sitofp <4 x i32> %arg to <4 x float> |
144 ret <4 x float> %res | 144 ret <4 x float> %res |
145 | 145 |
146 ; CHECK-LABEL: test_sitofp_v4i32_to_v4f32 | 146 ; CHECK-LABEL: test_sitofp_v4i32_to_v4f32 |
147 ; CHECK: cvtdq2ps | 147 ; CHECK: cvtdq2ps |
148 } | 148 } |
149 | 149 |
150 define <4 x float> @test_uitofp_v4i32_to_v4f32(<4 x i32> %arg) { | 150 define <4 x float> @test_uitofp_v4i32_to_v4f32(<4 x i32> %arg) { |
151 entry: | 151 entry: |
152 %res = uitofp <4 x i32> %arg to <4 x float> | 152 %res = uitofp <4 x i32> %arg to <4 x float> |
153 ret <4 x float> %res | 153 ret <4 x float> %res |
154 | 154 |
155 ; CHECK-LABEL: test_uitofp_v4i32_to_v4f32 | 155 ; CHECK-LABEL: test_uitofp_v4i32_to_v4f32 |
156 ; CHECK: call {{.*}} R_{{.*}} Sz_uitofp_v4i32 | 156 ; CHECK: call {{.*}} R_{{.*}} __Sz_uitofp_4xi32_4xf32 |
157 } | 157 } |
OLD | NEW |