Commit 401d123
authored
[MCP] Optimize copies when src is used during backward propagation (llvm#111130)
Before this patch, redundant COPY couldn't be removed for the following
case:
```
$R0 = OP ...
... // Read of %R0
$R1 = COPY killed $R0
```
This patch adds support for tracking the users of the source register
during backward propagation, so that we can remove the redundant COPY in
the above case and optimize it to:
```
$R1 = OP ...
... // Replace all uses of %R0 with $R1
```1 parent c4c60c0 commit 401d123
File tree
67 files changed
+4447
-5926
lines changed- llvm
- lib/CodeGen
- test/CodeGen
- AArch64
- ARM
- Mips
- llvm-ir
- tailcall
- X86
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
67 files changed
+4447
-5926
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
110 | 110 | | |
111 | 111 | | |
112 | 112 | | |
| 113 | + | |
113 | 114 | | |
114 | 115 | | |
115 | 116 | | |
| |||
224 | 225 | | |
225 | 226 | | |
226 | 227 | | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
227 | 265 | | |
228 | 266 | | |
229 | 267 | | |
| |||
236 | 274 | | |
237 | 275 | | |
238 | 276 | | |
239 | | - | |
| 277 | + | |
240 | 278 | | |
241 | 279 | | |
242 | 280 | | |
| |||
427 | 465 | | |
428 | 466 | | |
429 | 467 | | |
| 468 | + | |
| 469 | + | |
430 | 470 | | |
431 | 471 | | |
432 | 472 | | |
| |||
667 | 707 | | |
668 | 708 | | |
669 | 709 | | |
| 710 | + | |
| 711 | + | |
| 712 | + | |
| 713 | + | |
| 714 | + | |
| 715 | + | |
| 716 | + | |
| 717 | + | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
| 721 | + | |
| 722 | + | |
| 723 | + | |
| 724 | + | |
| 725 | + | |
| 726 | + | |
| 727 | + | |
| 728 | + | |
| 729 | + | |
| 730 | + | |
670 | 731 | | |
671 | 732 | | |
672 | 733 | | |
| |||
1033 | 1094 | | |
1034 | 1095 | | |
1035 | 1096 | | |
| 1097 | + | |
| 1098 | + | |
| 1099 | + | |
1036 | 1100 | | |
1037 | 1101 | | |
1038 | 1102 | | |
1039 | 1103 | | |
1040 | 1104 | | |
1041 | 1105 | | |
1042 | 1106 | | |
| 1107 | + | |
| 1108 | + | |
| 1109 | + | |
| 1110 | + | |
| 1111 | + | |
| 1112 | + | |
| 1113 | + | |
| 1114 | + | |
| 1115 | + | |
1043 | 1116 | | |
1044 | 1117 | | |
1045 | 1118 | | |
| |||
1105 | 1178 | | |
1106 | 1179 | | |
1107 | 1180 | | |
1108 | | - | |
| 1181 | + | |
| 1182 | + | |
| 1183 | + | |
1109 | 1184 | | |
1110 | 1185 | | |
1111 | 1186 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
| 10 | + | |
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
14 | | - | |
15 | | - | |
| 14 | + | |
16 | 15 | | |
17 | 16 | | |
18 | 17 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
388 | 388 | | |
389 | 389 | | |
390 | 390 | | |
391 | | - | |
392 | | - | |
393 | | - | |
| 391 | + | |
| 392 | + | |
394 | 393 | | |
395 | 394 | | |
396 | 395 | | |
| |||
405 | 404 | | |
406 | 405 | | |
407 | 406 | | |
408 | | - | |
409 | | - | |
410 | | - | |
| 407 | + | |
| 408 | + | |
411 | 409 | | |
412 | 410 | | |
413 | 411 | | |
| |||
549 | 547 | | |
550 | 548 | | |
551 | 549 | | |
552 | | - | |
553 | | - | |
554 | | - | |
555 | | - | |
| 550 | + | |
| 551 | + | |
| 552 | + | |
| 553 | + | |
556 | 554 | | |
557 | 555 | | |
558 | | - | |
559 | | - | |
| 556 | + | |
560 | 557 | | |
561 | | - | |
562 | | - | |
563 | | - | |
| 558 | + | |
| 559 | + | |
| 560 | + | |
564 | 561 | | |
565 | 562 | | |
566 | 563 | | |
567 | 564 | | |
568 | | - | |
| 565 | + | |
569 | 566 | | |
570 | | - | |
| 567 | + | |
571 | 568 | | |
572 | | - | |
573 | 569 | | |
574 | 570 | | |
575 | | - | |
576 | | - | |
577 | | - | |
| 571 | + | |
| 572 | + | |
| 573 | + | |
578 | 574 | | |
579 | 575 | | |
580 | 576 | | |
581 | 577 | | |
582 | 578 | | |
583 | 579 | | |
584 | | - | |
585 | | - | |
586 | | - | |
587 | | - | |
588 | | - | |
| 580 | + | |
| 581 | + | |
| 582 | + | |
| 583 | + | |
589 | 584 | | |
590 | 585 | | |
591 | | - | |
592 | | - | |
| 586 | + | |
593 | 587 | | |
594 | | - | |
595 | | - | |
596 | | - | |
| 588 | + | |
| 589 | + | |
| 590 | + | |
597 | 591 | | |
598 | 592 | | |
599 | 593 | | |
600 | 594 | | |
601 | | - | |
| 595 | + | |
602 | 596 | | |
603 | | - | |
| 597 | + | |
604 | 598 | | |
605 | | - | |
606 | 599 | | |
607 | | - | |
608 | | - | |
609 | | - | |
610 | | - | |
| 600 | + | |
| 601 | + | |
| 602 | + | |
611 | 603 | | |
612 | 604 | | |
613 | 605 | | |
| |||
0 commit comments