-
Notifications
You must be signed in to change notification settings - Fork 13.7k
Commit b72e5ad
Remove my
I added this back in 111999, but I no longer think it's a good idea
- It had to get scaled back to only power-of-two things to not break a bunch of targets
- LLVM seems to be getting better at memcpy removal anyway
- Introducing vector instructions has seemed to sometimes (115515) make autovectorization worse
So this removes it from the codegen crates entirely, and instead just tries to use <https://doc.rust-lang.org/nightly/nightly-rustc/rustc_codegen_ssa/traits/builder/trait.BuilderMethods.html#method.typed_place_copy> instead of direct `memcpy` so things will still use load/store for immediates.scalar_copy_backend_type
optimization attempt1 parent 548e14b commit b72e5ad
File tree
10 files changed
+58
-142
lines changed- compiler
- rustc_codegen_llvm/src
- rustc_codegen_ssa/src
- mir
- traits
- tests/codegen
10 files changed
+58
-142
lines changedLines changed: 0 additions & 3 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
281 | 281 |
| |
282 | 282 |
| |
283 | 283 |
| |
284 | - | ||
285 | - | ||
286 | - | ||
287 | 284 |
| |
288 | 285 |
| |
289 | 286 |
| |
|
Lines changed: 0 additions & 42 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
5 | 5 |
| |
6 | 6 |
| |
7 | 7 |
| |
8 | - | ||
9 | 8 |
| |
10 | 9 |
| |
11 | 10 |
| |
| |||
166 | 165 |
| |
167 | 166 |
| |
168 | 167 |
| |
169 | - | ||
170 | 168 |
| |
171 | 169 |
| |
172 | 170 |
| |
| |||
308 | 306 |
| |
309 | 307 |
| |
310 | 308 |
| |
311 | - | ||
312 | - | ||
313 | - | ||
314 | - | ||
315 | - | ||
316 | - | ||
317 | - | ||
318 | - | ||
319 | - | ||
320 | - | ||
321 | - | ||
322 | - | ||
323 | - | ||
324 | - | ||
325 | - | ||
326 | - | ||
327 | - | ||
328 | - | ||
329 | - | ||
330 | - | ||
331 | - | ||
332 | - | ||
333 | - | ||
334 | - | ||
335 | - | ||
336 | - | ||
337 | - | ||
338 | - | ||
339 | - | ||
340 | - | ||
341 | - | ||
342 | - | ||
343 | - | ||
344 | - | ||
345 | - | ||
346 | - | ||
347 | - | ||
348 | - | ||
349 | - | ||
350 | - | ||
351 | 309 |
|
Lines changed: 3 additions & 35 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
12 | 12 |
| |
13 | 13 |
| |
14 | 14 |
| |
15 | - | ||
15 | + | ||
16 | 16 |
| |
17 | 17 |
| |
18 | 18 |
| |
| |||
37 | 37 |
| |
38 | 38 |
| |
39 | 39 |
| |
40 | - | ||
40 | + | ||
41 | 41 |
| |
42 | 42 |
| |
43 | 43 |
| |
| |||
282 | 282 |
| |
283 | 283 |
| |
284 | 284 |
| |
285 | - | ||
286 | - | ||
287 | - | ||
288 | - | ||
289 | - | ||
290 | - | ||
291 | - | ||
292 | - | ||
293 | - | ||
285 | + | ||
294 | 286 |
| |
295 | 287 |
| |
296 | 288 |
| |
| |||
355 | 347 |
| |
356 | 348 |
| |
357 | 349 |
| |
358 | - | ||
359 | - | ||
360 | - | ||
361 | - | ||
362 | - | ||
363 | - | ||
364 | - | ||
365 | - | ||
366 | - | ||
367 | - | ||
368 | - | ||
369 | - | ||
370 | - | ||
371 | - | ||
372 | - | ||
373 | - | ||
374 | - | ||
375 | - | ||
376 | - | ||
377 | - | ||
378 | - | ||
379 | - | ||
380 | - | ||
381 | - | ||
382 | 350 |
| |
383 | 351 |
| |
384 | 352 |
| |
|
Lines changed: 4 additions & 11 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
8 | 8 |
| |
9 | 9 |
| |
10 | 10 |
| |
11 | - | ||
12 | 11 |
| |
13 | 12 |
| |
14 | 13 |
| |
| |||
1454 | 1453 |
| |
1455 | 1454 |
| |
1456 | 1455 |
| |
1457 | - | ||
1456 | + | ||
1458 | 1457 |
| |
1459 | 1458 |
| |
1460 | 1459 |
| |
| |||
1465 | 1464 |
| |
1466 | 1465 |
| |
1467 | 1466 |
| |
1468 | - | ||
1469 | - | ||
1470 | - | ||
1471 | - | ||
1472 | - | ||
1473 | - | ||
1474 | - | ||
1475 | - | ||
1476 | - | ||
1467 | + | ||
1468 | + | ||
1477 | 1469 |
| |
1478 | 1470 |
| |
1479 | 1471 |
| |
1480 | 1472 |
| |
1481 | 1473 |
| |
1482 | 1474 |
| |
1483 | 1475 |
| |
1476 | + | ||
1484 | 1477 |
| |
1485 | 1478 |
| |
1486 | 1479 |
| |
|
Lines changed: 8 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1 | 1 |
| |
2 | 2 |
| |
3 | 3 |
| |
4 | - | ||
5 | 4 |
| |
6 | 5 |
| |
7 | 6 |
| |
| |||
419 | 418 |
| |
420 | 419 |
| |
421 | 420 |
| |
422 | - | ||
421 | + | ||
422 | + | ||
423 | + | ||
424 | + | ||
425 | + | ||
426 | + | ||
427 | + | ||
428 | + | ||
423 | 429 |
| |
424 | 430 |
| |
425 | 431 |
| |
|
Lines changed: 12 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
251 | 251 |
| |
252 | 252 |
| |
253 | 253 |
| |
254 | + | ||
255 | + | ||
256 | + | ||
257 | + | ||
258 | + | ||
259 | + | ||
260 | + | ||
261 | + | ||
262 | + | ||
263 | + | ||
264 | + | ||
265 | + | ||
254 | 266 |
| |
255 | 267 |
| |
256 | 268 |
| |
|
Lines changed: 0 additions & 22 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
133 | 133 |
| |
134 | 134 |
| |
135 | 135 |
| |
136 | - | ||
137 | - | ||
138 | - | ||
139 | - | ||
140 | - | ||
141 | - | ||
142 | - | ||
143 | - | ||
144 | - | ||
145 | - | ||
146 | - | ||
147 | - | ||
148 | - | ||
149 | - | ||
150 | - | ||
151 | - | ||
152 | - | ||
153 | - | ||
154 | - | ||
155 | - | ||
156 | - | ||
157 | - | ||
158 | 136 |
| |
159 | 137 |
| |
160 | 138 |
| |
|
Lines changed: 25 additions & 19 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
5 | 5 |
| |
6 | 6 |
| |
7 | 7 |
| |
8 | - | ||
9 | - | ||
10 | - | ||
11 | - | ||
12 | - | ||
8 | + | ||
9 | + | ||
10 | + | ||
11 | + | ||
12 | + | ||
13 | + | ||
13 | 14 |
| |
14 | 15 |
| |
15 | 16 |
| |
16 | 17 |
| |
17 | 18 |
| |
18 | 19 |
| |
20 | + | ||
21 | + | ||
22 | + | ||
19 | 23 |
| |
20 | - | ||
21 | - | ||
24 | + | ||
25 | + | ||
26 | + | ||
27 | + | ||
22 | 28 |
| |
23 | 29 |
| |
24 | 30 |
| |
25 | 31 |
| |
26 | 32 |
| |
27 | 33 |
| |
34 | + | ||
28 | 35 |
| |
29 | - | ||
30 | - | ||
31 | - | ||
32 | - | ||
36 | + | ||
37 | + | ||
38 | + | ||
33 | 39 |
| |
34 | 40 |
| |
35 | 41 |
| |
36 | 42 |
| |
37 | 43 |
| |
38 | 44 |
| |
45 | + | ||
39 | 46 |
| |
40 | - | ||
41 | - | ||
42 | - | ||
43 | - | ||
47 | + | ||
48 | + | ||
49 | + | ||
44 | 50 |
| |
45 | 51 |
| |
46 | 52 |
| |
47 | 53 |
| |
48 | 54 |
| |
49 | 55 |
| |
56 | + | ||
50 | 57 |
| |
51 | - | ||
52 | - | ||
53 | - | ||
54 | - | ||
58 | + | ||
59 | + | ||
60 | + | ||
55 | 61 |
| |
56 | 62 |
|
Lines changed: 4 additions & 4 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
16 | 16 |
| |
17 | 17 |
| |
18 | 18 |
| |
19 | - | ||
20 | - | ||
19 | + | ||
20 | + | ||
21 | 21 |
| |
22 | 22 |
| |
23 | 23 |
| |
| |||
26 | 26 |
| |
27 | 27 |
| |
28 | 28 |
| |
29 | - | ||
30 | - | ||
29 | + | ||
30 | + | ||
31 | 31 |
| |
32 | 32 |
| |
33 | 33 |
|
Lines changed: 2 additions & 4 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
45 | 45 |
| |
46 | 46 |
| |
47 | 47 |
| |
48 | - | ||
49 | - | ||
50 | - | ||
51 | - | ||
48 | + | ||
49 | + | ||
52 | 50 |
| |
53 | 51 |
|
0 commit comments