1; RUN: llc < %s -mtriple=arm-unknown-unknown 2 3define i8 @test_minsize_uu8(i8 %x) minsize optsize { 4entry: 5 %0 = udiv i8 %x, 10 6 %1 = urem i8 %x, 10 7 %res = add i8 %0, %1 8 ret i8 %res 9} 10 11define i8 @test_minsize_ss8(i8 %x) minsize optsize { 12entry: 13 %0 = sdiv i8 %x, 10 14 %1 = srem i8 %x, 10 15 %res = add i8 %0, %1 16 ret i8 %res 17} 18 19define i8 @test_minsize_us8(i8 %x) minsize optsize { 20entry: 21 %0 = udiv i8 %x, 10 22 %1 = srem i8 %x, 10 23 %res = add i8 %0, %1 24 ret i8 %res 25} 26 27define i8 @test_minsize_su8(i8 %x) minsize optsize { 28entry: 29 %0 = sdiv i8 %x, 10 30 %1 = urem i8 %x, 10 31 %res = add i8 %0, %1 32 ret i8 %res 33} 34 35define i16 @test_minsize_uu16(i16 %x) minsize optsize { 36entry: 37 %0 = udiv i16 %x, 10 38 %1 = urem i16 %x, 10 39 %res = add i16 %0, %1 40 ret i16 %res 41} 42 43define i16 @test_minsize_ss16(i16 %x) minsize optsize { 44entry: 45 %0 = sdiv i16 %x, 10 46 %1 = srem i16 %x, 10 47 %res = add i16 %0, %1 48 ret i16 %res 49} 50 51define i16 @test_minsize_us16(i16 %x) minsize optsize { 52entry: 53 %0 = udiv i16 %x, 10 54 %1 = srem i16 %x, 10 55 %res = add i16 %0, %1 56 ret i16 %res 57} 58 59define i16 @test_minsize_su16(i16 %x) minsize optsize { 60entry: 61 %0 = sdiv i16 %x, 10 62 %1 = urem i16 %x, 10 63 %res = add i16 %0, %1 64 ret i16 %res 65} 66 67define i32 @test_minsize_uu32(i32 %x) minsize optsize { 68entry: 69 %0 = udiv i32 %x, 10 70 %1 = urem i32 %x, 10 71 %res = add i32 %0, %1 72 ret i32 %res 73} 74 75define i32 @test_minsize_ss32(i32 %x) minsize optsize { 76entry: 77 %0 = sdiv i32 %x, 10 78 %1 = srem i32 %x, 10 79 %res = add i32 %0, %1 80 ret i32 %res 81} 82 83define i32 @test_minsize_us32(i32 %x) minsize optsize { 84entry: 85 %0 = udiv i32 %x, 10 86 %1 = srem i32 %x, 10 87 %res = add i32 %0, %1 88 ret i32 %res 89} 90 91define i32 @test_minsize_su32(i32 %x) minsize optsize { 92entry: 93 %0 = sdiv i32 %x, 10 94 %1 = urem i32 %x, 10 95 %res = add i32 %0, %1 96 ret i32 %res 97} 98 99define i64 @test_minsize_uu64(i64 %x) minsize optsize { 100entry: 101 %0 = udiv i64 %x, 10 102 %1 = urem i64 %x, 10 103 %res = add i64 %0, %1 104 ret i64 %res 105} 106 107define i64 @test_minsize_ss64(i64 %x) minsize optsize { 108entry: 109 %0 = sdiv i64 %x, 10 110 %1 = srem i64 %x, 10 111 %res = add i64 %0, %1 112 ret i64 %res 113} 114 115define i64 @test_minsize_us64(i64 %x) minsize optsize { 116entry: 117 %0 = udiv i64 %x, 10 118 %1 = srem i64 %x, 10 119 %res = add i64 %0, %1 120 ret i64 %res 121} 122 123define i64 @test_minsize_su64(i64 %x) minsize optsize { 124entry: 125 %0 = sdiv i64 %x, 10 126 %1 = urem i64 %x, 10 127 %res = add i64 %0, %1 128 ret i64 %res 129} 130 131define i8 @test_uu8(i8 %x) optsize { 132entry: 133 %0 = udiv i8 %x, 10 134 %1 = urem i8 %x, 10 135 %res = add i8 %0, %1 136 ret i8 %res 137} 138 139define i8 @test_ss8(i8 %x) optsize { 140entry: 141 %0 = sdiv i8 %x, 10 142 %1 = srem i8 %x, 10 143 %res = add i8 %0, %1 144 ret i8 %res 145} 146 147define i8 @test_us8(i8 %x) optsize { 148entry: 149 %0 = udiv i8 %x, 10 150 %1 = srem i8 %x, 10 151 %res = add i8 %0, %1 152 ret i8 %res 153} 154 155define i8 @test_su8(i8 %x) optsize { 156entry: 157 %0 = sdiv i8 %x, 10 158 %1 = urem i8 %x, 10 159 %res = add i8 %0, %1 160 ret i8 %res 161} 162 163define i16 @test_uu16(i16 %x) optsize { 164entry: 165 %0 = udiv i16 %x, 10 166 %1 = urem i16 %x, 10 167 %res = add i16 %0, %1 168 ret i16 %res 169} 170 171define i16 @test_ss16(i16 %x) optsize { 172entry: 173 %0 = sdiv i16 %x, 10 174 %1 = srem i16 %x, 10 175 %res = add i16 %0, %1 176 ret i16 %res 177} 178 179define i16 @test_us16(i16 %x) optsize { 180entry: 181 %0 = udiv i16 %x, 10 182 %1 = srem i16 %x, 10 183 %res = add i16 %0, %1 184 ret i16 %res 185} 186 187define i16 @test_su16(i16 %x) optsize { 188entry: 189 %0 = sdiv i16 %x, 10 190 %1 = urem i16 %x, 10 191 %res = add i16 %0, %1 192 ret i16 %res 193} 194 195define i32 @test_uu32(i32 %x) optsize { 196entry: 197 %0 = udiv i32 %x, 10 198 %1 = urem i32 %x, 10 199 %res = add i32 %0, %1 200 ret i32 %res 201} 202 203define i32 @test_ss32(i32 %x) optsize { 204entry: 205 %0 = sdiv i32 %x, 10 206 %1 = srem i32 %x, 10 207 %res = add i32 %0, %1 208 ret i32 %res 209} 210 211define i32 @test_us32(i32 %x) optsize { 212entry: 213 %0 = udiv i32 %x, 10 214 %1 = srem i32 %x, 10 215 %res = add i32 %0, %1 216 ret i32 %res 217} 218 219define i32 @test_su32(i32 %x) optsize { 220entry: 221 %0 = sdiv i32 %x, 10 222 %1 = urem i32 %x, 10 223 %res = add i32 %0, %1 224 ret i32 %res 225} 226 227define i64 @test_uu64(i64 %x) optsize { 228entry: 229 %0 = udiv i64 %x, 10 230 %1 = urem i64 %x, 10 231 %res = add i64 %0, %1 232 ret i64 %res 233} 234 235define i64 @test_ss64(i64 %x) optsize { 236entry: 237 %0 = sdiv i64 %x, 10 238 %1 = srem i64 %x, 10 239 %res = add i64 %0, %1 240 ret i64 %res 241} 242 243define i64 @test_us64(i64 %x) optsize { 244entry: 245 %0 = udiv i64 %x, 10 246 %1 = srem i64 %x, 10 247 %res = add i64 %0, %1 248 ret i64 %res 249} 250 251define i64 @test_su64(i64 %x) optsize { 252entry: 253 %0 = sdiv i64 %x, 10 254 %1 = urem i64 %x, 10 255 %res = add i64 %0, %1 256 ret i64 %res 257} 258