Lines Matching refs:sdiv

4 define i8 @add-shl-sdiv-scalar0(i8 %x) {
5 ; CHECK-LABEL: @add-shl-sdiv-scalar0(
9 %sd = sdiv i8 %x, -4
15 define i8 @add-shl-sdiv-scalar1(i8 %x) {
16 ; CHECK-LABEL: @add-shl-sdiv-scalar1(
20 %sd = sdiv i8 %x, -64
26 define i32 @add-shl-sdiv-scalar2(i32 %x) {
27 ; CHECK-LABEL: @add-shl-sdiv-scalar2(
31 %sd = sdiv i32 %x, -1073741824
39 define <3 x i8> @add-shl-sdiv-splat0(<3 x i8> %x) {
40 ; CHECK-LABEL: @add-shl-sdiv-splat0(
44 %sd = sdiv <3 x i8> %x, <i8 -4, i8 -4, i8 -4>
50 define <4 x i32> @add-shl-sdiv-splat1(<4 x i32> %x) {
51 ; CHECK-LABEL: @add-shl-sdiv-splat1(
55 %sd = sdiv <4 x i32> %x, <i32 -1073741824, i32 -1073741824, i32 -1073741824, i32 -1073741824>
61 define <2 x i64> @add-shl-sdiv-splat2(<2 x i64> %x) {
62 ; CHECK-LABEL: @add-shl-sdiv-splat2(
66 %sd = sdiv <2 x i64> %x, <i64 -32, i64 -32>
75 define i32 @add-shl-sdiv-i32-4-use0(i32 %x) {
76 ; CHECK-LABEL: @add-shl-sdiv-i32-4-use0(
82 %sd = sdiv i32 %x, -16
88 define i32 @add-shl-sdiv-i32-use1(i32 %x) {
89 ; CHECK-LABEL: @add-shl-sdiv-i32-use1(
90 ; CHECK-NEXT: [[SD:%.*]] = sdiv i32 [[X:%.*]], -16
95 %sd = sdiv i32 %x, -16
102 define i32 @add-shl-sdiv-i32-use2(i32 %x) {
103 ; CHECK-LABEL: @add-shl-sdiv-i32-use2(
104 ; CHECK-NEXT: [[SD:%.*]] = sdiv i32 [[X:%.*]], -16
110 %sd = sdiv i32 %x, -16
117 define i32 @add-shl-sdiv-i32-use3(i32 %x) {
118 ; CHECK-LABEL: @add-shl-sdiv-i32-use3(
119 ; CHECK-NEXT: [[SD:%.*]] = sdiv i32 [[X:%.*]], -16
126 %sd = sdiv i32 %x, -16
135 define <3 x i8> @add-shl-sdiv-use4(<3 x i8> %x) {
136 ; CHECK-LABEL: @add-shl-sdiv-use4(
137 ; CHECK-NEXT: [[SD:%.*]] = sdiv <3 x i8> [[X:%.*]], <i8 -4, i8 -4, i8 -4>
142 %sd = sdiv <3 x i8> %x, <i8 -4, i8 -4, i8 -4>
151 define i8 @add-shl-sdiv-negative0(i8 %x) {
152 ; CHECK-LABEL: @add-shl-sdiv-negative0(
153 ; CHECK-NEXT: [[SD:%.*]] = sdiv i8 [[X:%.*]], 4
158 %sd = sdiv i8 %x, 4
164 define i32 @add-shl-sdiv-negative1(i32 %x) {
165 ; CHECK-LABEL: @add-shl-sdiv-negative1(
169 %sd = sdiv i32 %x, -1
175 define i32 @add-shl-sdiv-negative2(i32 %x) {
176 ; CHECK-LABEL: @add-shl-sdiv-negative2(
182 %sd = sdiv i32 %x, -2147483648
188 define <3 x i8> @add-shl-sdiv-negative3(<3 x i8> %x) {
189 ; CHECK-LABEL: @add-shl-sdiv-negative3(
190 ; CHECK-NEXT: [[SD:%.*]] = sdiv <3 x i8> [[X:%.*]], <i8 -5, i8 -5, i8 -5>
195 %sd = sdiv <3 x i8> %x, <i8 -5, i8 -5, i8 -5>
201 define <2 x i64> @add-shl-sdiv-negative4(<2 x i64> %x) {
202 ; CHECK-LABEL: @add-shl-sdiv-negative4(
205 %sd = sdiv <2 x i64> %x, <i64 32, i64 32>
213 define <3 x i8> @add-shl-sdiv-3xi8-undef0(<3 x i8> %x) {
214 ; CHECK-LABEL: @add-shl-sdiv-3xi8-undef0(
217 %sd = sdiv <3 x i8> %x, <i8 -4, i8 undef, i8 -4>
223 define <3 x i8> @add-shl-sdiv-3xi8-undef1(<3 x i8> %x) {
224 ; CHECK-LABEL: @add-shl-sdiv-3xi8-undef1(
225 ; CHECK-NEXT: [[SD:%.*]] = sdiv <3 x i8> [[X:%.*]], <i8 -4, i8 -4, i8 -4>
230 %sd = sdiv <3 x i8> %x, <i8 -4, i8 -4, i8 -4>
238 define <2 x i64> @add-shl-sdiv-nonsplat0(<2 x i64> %x) {
239 ; CHECK-LABEL: @add-shl-sdiv-nonsplat0(
240 ; CHECK-NEXT: [[SD:%.*]] = sdiv <2 x i64> [[X:%.*]], <i64 -32, i64 -64>
245 %sd = sdiv <2 x i64> %x, <i64 -32, i64 -64>
251 define <3 x i8> @add-shl-sdiv-nonsplat1(<3 x i8> %x) {
252 ; CHECK-LABEL: @add-shl-sdiv-nonsplat1(
253 ; CHECK-NEXT: [[SD:%.*]] = sdiv <3 x i8> [[X:%.*]], <i8 -4, i8 -4, i8 -4>
258 %sd = sdiv <3 x i8> %x, <i8 -4, i8 -4, i8 -4>