/external/llvm-project/llvm/test/Transforms/InstCombine/ |
D | srem-canonicalize.ll | 6 ; CHECK-NEXT: [[TMP1:%.*]] = srem i32 [[X:%.*]], [[Y:%.*]] 11 %srem = srem i32 %neg, %y 12 ret i32 %srem 15 ; (X srem -Y) is not equal to -(X srem Y), don't canonicalize. 20 ; CHECK-NEXT: [[SREM:%.*]] = srem i32 [[Y]], [[NEG]] 25 %srem = srem i32 %y, %neg 26 ret i32 %srem 32 ; CHECK-NEXT: [[SREM:%.*]] = srem i32 [[NEG]], [[Y:%.*]] 36 %srem = srem i32 %neg, %y 37 ret i32 %srem [all …]
|
/external/llvm-project/llvm/test/CodeGen/AArch64/ |
D | srem-seteq.ll | 20 %srem = srem i32 %X, 5 21 %cmp = icmp eq i32 %srem, 0 39 %srem = srem i32 %X, 25 40 %cmp = icmp eq i32 %srem, 0 56 %srem = srem i32 %X, 1073741827 57 %cmp = icmp eq i32 %srem, 0 73 %srem = srem i32 %X, 2147483651 74 %cmp = icmp eq i32 %srem, 0 99 %srem = srem i16 %X, 14 100 %cmp = icmp ne i16 %srem, 0 [all …]
|
D | srem-seteq-vec-splat.ll | 22 %srem = srem <4 x i32> %X, <i32 25, i32 25, i32 25, i32 25> 23 %cmp = icmp eq <4 x i32> %srem, <i32 0, i32 0, i32 0, i32 0> 46 %srem = srem <4 x i32> %X, <i32 100, i32 100, i32 100, i32 100> 47 %cmp = icmp eq <4 x i32> %srem, <i32 0, i32 0, i32 0, i32 0> 72 %srem = srem <4 x i32> %X, <i32 25, i32 -25, i32 -25, i32 25> 73 %cmp = icmp eq <4 x i32> %srem, <i32 0, i32 0, i32 0, i32 0> 96 %srem = srem <4 x i32> %X, <i32 -100, i32 100, i32 -100, i32 100> 97 %cmp = icmp eq <4 x i32> %srem, <i32 0, i32 0, i32 0, i32 0> 123 %srem = srem <4 x i32> %X, <i32 25, i32 25, i32 25, i32 25> 124 %cmp = icmp eq <4 x i32> %srem, <i32 0, i32 0, i32 undef, i32 0> [all …]
|
D | rem_crash.ll | 14 %1 = srem i8 %x, 10 22 %1 = srem i8 %x, 10 46 %1 = srem i16 %x, 10 54 %1 = srem i16 %x, 10 78 %1 = srem i32 %x, 10 86 %1 = srem i32 %x, 10 110 %1 = srem i64 %x, 10 118 %1 = srem i64 %x, 10 142 %1 = srem i8 %x, 10 150 %1 = srem i8 %x, 10 [all …]
|
D | srem-seteq-vec-nonsplat.ll | 29 %srem = srem <4 x i32> %X, <i32 5, i32 14, i32 25, i32 100> 30 %cmp = icmp eq <4 x i32> %srem, <i32 0, i32 0, i32 0, i32 0> 54 %srem = srem <4 x i32> %X, <i32 5, i32 5, i32 4294967295, i32 5> 55 %cmp = icmp eq <4 x i32> %srem, <i32 0, i32 0, i32 0, i32 0> 75 %srem = srem <4 x i32> %X, <i32 5, i32 5, i32 4294967295, i32 5> 76 %cmp = icmp ne <4 x i32> %srem, <i32 0, i32 0, i32 0, i32 0> 109 %srem = srem <4 x i32> %X, <i32 14, i32 14, i32 4294967295, i32 14> 110 %cmp = icmp eq <4 x i32> %srem, <i32 0, i32 0, i32 0, i32 0> 141 %srem = srem <4 x i32> %X, <i32 14, i32 14, i32 4294967295, i32 14> 142 %cmp = icmp ne <4 x i32> %srem, <i32 0, i32 0, i32 0, i32 0> [all …]
|
D | srem-lkk.ll | 17 %1 = srem i32 %x, 95 34 %1 = srem i32 %x, 1060 51 %1 = srem i32 %x, -723 68 %1 = srem i32 %x, -22981 73 ; Don't fold if we can combine srem with sdiv. 88 %1 = srem i32 %x, 95 104 %1 = srem i32 %x, 64 114 %1 = srem i32 %x, 1 129 %1 = srem i32 %x, 2147483648 133 ; Don't fold i64 srem [all …]
|
/external/llvm-project/llvm/test/CodeGen/X86/ |
D | srem-seteq.ll | 27 %srem = srem i32 %X, 5 28 %cmp = icmp eq i32 %srem, 0 51 %srem = srem i32 %X, 25 52 %cmp = icmp eq i32 %srem, 0 76 %srem = srem i32 %X, 1073741827 77 %cmp = icmp eq i32 %srem, 0 101 %srem = srem i32 %X, 2147483651 102 %cmp = icmp eq i32 %srem, 0 135 %srem = srem i16 %X, 14 136 %cmp = icmp ne i16 %srem, 0 [all …]
|
D | rem_crash.ll | 15 %1 = srem i8 %x, 10 23 %1 = srem i8 %x, 10 47 %1 = srem i16 %x, 10 55 %1 = srem i16 %x, 10 79 %1 = srem i32 %x, 10 87 %1 = srem i32 %x, 10 111 %1 = srem i64 %x, 10 119 %1 = srem i64 %x, 10 143 %1 = srem i8 %x, 10 151 %1 = srem i8 %x, 10 [all …]
|
D | combine-srem.ll | 6 ; fold (srem x, 1) -> 0 12 %1 = srem i32 %x, 1 26 %1 = srem <4 x i32> %x, <i32 1, i32 1, i32 1, i32 1> 30 ; fold (srem x, -1) -> 0 36 %1 = srem i32 %x, -1 50 %1 = srem <4 x i32> %x, <i32 -1, i32 -1, i32 -1, i32 -1> 54 ; TODO fold (srem x, INT_MIN) 65 %1 = srem i32 %x, -2147483648 98 %1 = srem <4 x i32> %x, <i32 -2147483648, i32 -2147483648, i32 -2147483648, i32 -2147483648> 102 ; fold (srem 0, x) -> 0 [all …]
|
/external/llvm-project/llvm/test/Analysis/CostModel/X86/ |
D | rem.ll | 14 define i32 @srem() { 15 ; CHECK-LABEL: 'srem' 16 ; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = srem i64 undef, und… 17 ; CHECK-NEXT: Cost Model: Found an estimated cost of 40 for instruction: %V2i64 = srem <2 x i64> u… 18 ; CHECK-NEXT: Cost Model: Found an estimated cost of 80 for instruction: %V4i64 = srem <4 x i64> u… 19 ; CHECK-NEXT: Cost Model: Found an estimated cost of 160 for instruction: %V8i64 = srem <8 x i64> … 20 ; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = srem i32 undef, und… 21 ; CHECK-NEXT: Cost Model: Found an estimated cost of 80 for instruction: %V4i32 = srem <4 x i32> u… 22 ; CHECK-NEXT: Cost Model: Found an estimated cost of 160 for instruction: %V8i32 = srem <8 x i32> … 23 ; CHECK-NEXT: Cost Model: Found an estimated cost of 320 for instruction: %V16i32 = srem <16 x i32… [all …]
|
/external/llvm/test/CodeGen/AArch64/ |
D | rem_crash.ll | 14 %1 = srem i8 %x, 10 22 %1 = srem i8 %x, 10 46 %1 = srem i16 %x, 10 54 %1 = srem i16 %x, 10 78 %1 = srem i32 %x, 10 86 %1 = srem i32 %x, 10 110 %1 = srem i64 %x, 10 118 %1 = srem i64 %x, 10 142 %1 = srem i8 %x, 10 150 %1 = srem i8 %x, 10 [all …]
|
/external/llvm-project/llvm/test/CodeGen/ARM/ |
D | rem_crash.ll | 14 %1 = srem i8 %x, 10 22 %1 = srem i8 %x, 10 46 %1 = srem i16 %x, 10 54 %1 = srem i16 %x, 10 78 %1 = srem i32 %x, 10 86 %1 = srem i32 %x, 10 110 %1 = srem i64 %x, 10 118 %1 = srem i64 %x, 10 142 %1 = srem i8 %x, 10 150 %1 = srem i8 %x, 10 [all …]
|
/external/llvm/test/CodeGen/ARM/ |
D | rem_crash.ll | 14 %1 = srem i8 %x, 10 22 %1 = srem i8 %x, 10 46 %1 = srem i16 %x, 10 54 %1 = srem i16 %x, 10 78 %1 = srem i32 %x, 10 86 %1 = srem i32 %x, 10 110 %1 = srem i64 %x, 10 118 %1 = srem i64 %x, 10 142 %1 = srem i8 %x, 10 150 %1 = srem i8 %x, 10 [all …]
|
/external/llvm/test/CodeGen/X86/ |
D | rem_crash.ll | 15 %1 = srem i8 %x, 10 23 %1 = srem i8 %x, 10 47 %1 = srem i16 %x, 10 55 %1 = srem i16 %x, 10 79 %1 = srem i32 %x, 10 87 %1 = srem i32 %x, 10 111 %1 = srem i64 %x, 10 119 %1 = srem i64 %x, 10 143 %1 = srem i8 %x, 10 151 %1 = srem i8 %x, 10 [all …]
|
/external/llvm/test/Analysis/CostModel/ARM/ |
D | divrem.ll | 229 ; CHECK: cost of 40 {{.*}} srem 231 %1 = srem <2 x i8> %a, %b 236 ; CHECK: cost of 40 {{.*}} srem 238 %1 = srem <2 x i16> %a, %b 243 ; CHECK: cost of 40 {{.*}} srem 245 %1 = srem <2 x i32> %a, %b 250 ; CHECK: cost of 40 {{.*}} srem 252 %1 = srem <2 x i64> %a, %b 257 ; CHECK: cost of 80 {{.*}} srem 259 %1 = srem <4 x i8> %a, %b [all …]
|
/external/llvm-project/llvm/test/Transforms/InstSimplify/ |
D | signed-div-rem.ll | 169 %rem = srem i32 %conv, 129 176 ; CHECK-NEXT: [[REM:%.*]] = srem i32 [[CONV]], 128 180 %rem = srem i32 %conv, 128 190 %rem = srem i32 %conv, -129 197 ; CHECK-NEXT: [[REM:%.*]] = srem i32 [[CONV]], -128 201 %rem = srem i32 %conv, -128 211 %rem = srem i32 %conv, 256 218 ; CHECK-NEXT: [[REM:%.*]] = srem i32 [[CONV]], 255 222 %rem = srem i32 %conv, 255 232 %rem = srem i32 %conv, -256 [all …]
|
D | srem.ll | 9 %rem = srem i32 %negx, %x 18 %rem = srem <2 x i32> %negx, %x 28 %rem = srem i32 %xy, %yx 38 %rem = srem <2 x i32> %xy, %yx 47 %rem = srem <3 x i32> %negx, %x 54 ; CHECK-NEXT: [[REM:%.*]] = srem <2 x i32> [[NEGX]], [[X]] 58 %rem = srem <2 x i32> %negx, %x 67 %rem = srem i32 %x, %negx
|
/external/llvm-project/llvm/test/Analysis/CostModel/SystemZ/ |
D | divrem-pow2.ll | 197 ; Scalar srem 200 %r = srem i64 %a, 2 202 ; COST: Cost Model: Found an estimated cost of 4 for instruction: %r = srem i64 %a, 2 206 %r = srem i64 %a, -4 208 ; COST: Cost Model: Found an estimated cost of 4 for instruction: %r = srem i64 %a, -4 212 %r = srem i32 %a, 8 214 ; COST: Cost Model: Found an estimated cost of 4 for instruction: %r = srem i32 %a, 8 218 %r = srem i32 %a, -16 220 ; COST: Cost Model: Found an estimated cost of 4 for instruction: %r = srem i32 %a, -16 224 %r = srem i16 %a, 32 [all …]
|
D | divrem-const.ll | 153 ; Scalar srem 156 %r = srem i64 %a, 20 158 ; COST: Cost Model: Found an estimated cost of 10 for instruction: %r = srem i64 162 %r = srem i32 %a, 20 164 ; COST: Cost Model: Found an estimated cost of 10 for instruction: %r = srem i32 168 %r = srem i16 %a, 20 170 ; COST: Cost Model: Found an estimated cost of 10 for instruction: %r = srem i16 174 %r = srem i8 %a, 20 176 ; COST: Cost Model: Found an estimated cost of 10 for instruction: %r = srem i8 179 ; Vector srem [all …]
|
D | divrem-reg.ll | 148 ; Scalar srem 151 %r = srem i64 %a, %b 153 ; CHECK: Cost Model: Found an estimated cost of 20 for instruction: %r = srem i64 157 %r = srem i32 %a, %b 159 ; CHECK: Cost Model: Found an estimated cost of 20 for instruction: %r = srem i32 163 %r = srem i16 %a, %b 165 ; CHECK: Cost Model: Found an estimated cost of 20 for instruction: %r = srem i16 169 %r = srem i8 %a, %b 171 ; CHECK: Cost Model: Found an estimated cost of 20 for instruction: %r = srem i8 174 ; Vector srem [all …]
|
/external/llvm/test/CodeGen/AMDGPU/ |
D | srem.ll | 9 %result = srem i32 %num, %den 16 %result = srem i32 %num, 4 29 %result = srem i32 %num, 7 38 %result = srem <2 x i32> %num, %den 45 %result = srem <2 x i32> %num, <i32 4, i32 4> 54 %result = srem <4 x i32> %num, %den 61 %result = srem <4 x i32> %num, <i32 4, i32 4, i32 4, i32 4> 70 %result = srem i64 %num, %den 77 %result = srem i64 %num, 4 86 %result = srem <2 x i64> %num, %den [all …]
|
/external/llvm-project/llvm/test/CodeGen/PowerPC/ |
D | srem-lkk.ll | 18 %1 = srem i32 %x, 95 35 %1 = srem i32 %x, 1060 52 %1 = srem i32 %x, -723 69 %1 = srem i32 %x, -22981 74 ; Don't fold if we can combine srem with sdiv. 89 %1 = srem i32 %x, 95 104 %1 = srem i32 %x, 64 114 %1 = srem i32 %x, 1 127 %1 = srem i32 %x, 2147483648 131 ; Don't fold i64 srem [all …]
|
/external/llvm-project/llvm/test/CodeGen/AMDGPU/ |
D | srem.ll | 11 %result = srem i16 %num, 7 20 %result = srem i32 %num, %den 27 %result = srem i32 %num, 4 40 %result = srem i32 %num, 7 49 %result = srem <2 x i32> %num, %den 56 %result = srem <2 x i32> %num, <i32 4, i32 4> 65 %result = srem <4 x i32> %num, %den 72 %result = srem <4 x i32> %num, <i32 4, i32 4, i32 4, i32 4> 81 %result = srem i64 %num, %den 88 %result = srem i64 %num, 4 [all …]
|
/external/llvm/test/Transforms/InstSimplify/ |
D | rem.ll | 9 %rem = srem i32 %x, %rhs 24 ; CHECK: [[MOD:%.*]] = srem i32 %x, %n 27 %mod = srem i32 %x, %n 28 %mod1 = srem i32 %mod, %n 44 ; CHECK: [[MOD:%.*]] = srem i32 %x, %n 48 %mod = srem i32 %x, %n
|
/external/llvm-project/llvm/test/Transforms/IndVarSimplify/ |
D | replace-srem-by-urem.ll | 10 %rem = srem i32 %i.01, 2 11 ; CHECK-NOT: srem 32 %rem = srem i32 %mul, %d 52 %rem = srem i32 2048, %i.01 54 ; CHECK-NOT: srem 74 %rem = srem i32 %mul, 7 76 ; CHECK-NOT: srem 96 %rem = srem i32 %mul, 6 98 ; CHECK-NOT: srem
|