Commit 2b718e8
committed
use ManuallyDrop instead of forget inside collections
This commit changes some usage of mem::forget into mem::ManuallyDrop
in some Vec, VecDeque, BTreeMap and Box methods.
Before the commit, the generated IR for some of the methods was
longer, and even after optimization, some unwinding artifacts were
still present.1 parent 1b521f5 commit 2b718e8
File tree
5 files changed
+34
-38
lines changed- src/liballoc
- collections
- btree
5 files changed
+34
-38
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
469 | 469 | | |
470 | 470 | | |
471 | 471 | | |
| 472 | + | |
472 | 473 | | |
473 | | - | |
474 | 474 | | |
475 | 475 | | |
476 | 476 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| 7 | + | |
7 | 8 | | |
8 | 9 | | |
9 | | - | |
| 10 | + | |
10 | 11 | | |
11 | 12 | | |
12 | 13 | | |
| |||
190 | 191 | | |
191 | 192 | | |
192 | 193 | | |
| 194 | + | |
193 | 195 | | |
194 | 196 | | |
195 | | - | |
196 | 197 | | |
197 | 198 | | |
198 | 199 | | |
| |||
1515 | 1516 | | |
1516 | 1517 | | |
1517 | 1518 | | |
1518 | | - | |
1519 | | - | |
| 1519 | + | |
| 1520 | + | |
1520 | 1521 | | |
1521 | 1522 | | |
1522 | 1523 | | |
1523 | | - | |
1524 | | - | |
1525 | | - | |
1526 | | - | |
| 1524 | + | |
| 1525 | + | |
| 1526 | + | |
1527 | 1527 | | |
1528 | 1528 | | |
1529 | 1529 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
15 | | - | |
| 15 | + | |
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
| |||
2898 | 2898 | | |
2899 | 2899 | | |
2900 | 2900 | | |
2901 | | - | |
| 2901 | + | |
2902 | 2902 | | |
| 2903 | + | |
2903 | 2904 | | |
2904 | 2905 | | |
2905 | 2906 | | |
2906 | | - | |
2907 | 2907 | | |
2908 | 2908 | | |
2909 | 2909 | | |
| |||
2955 | 2955 | | |
2956 | 2956 | | |
2957 | 2957 | | |
| 2958 | + | |
2958 | 2959 | | |
2959 | 2960 | | |
2960 | 2961 | | |
2961 | 2962 | | |
2962 | 2963 | | |
2963 | 2964 | | |
2964 | 2965 | | |
2965 | | - | |
2966 | | - | |
2967 | | - | |
| 2966 | + | |
2968 | 2967 | | |
2969 | 2968 | | |
2970 | 2969 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | | - | |
| 6 | + | |
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
| |||
112 | 112 | | |
113 | 113 | | |
114 | 114 | | |
115 | | - | |
| 115 | + | |
116 | 116 | | |
117 | | - | |
118 | | - | |
119 | | - | |
| 117 | + | |
| 118 | + | |
120 | 119 | | |
121 | 120 | | |
122 | 121 | | |
| |||
579 | 578 | | |
580 | 579 | | |
581 | 580 | | |
| 581 | + | |
582 | 582 | | |
583 | | - | |
584 | | - | |
585 | | - | |
586 | | - | |
| 583 | + | |
| 584 | + | |
587 | 585 | | |
588 | 586 | | |
589 | 587 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
66 | 66 | | |
67 | 67 | | |
68 | 68 | | |
69 | | - | |
| 69 | + | |
70 | 70 | | |
71 | 71 | | |
72 | 72 | | |
| |||
392 | 392 | | |
393 | 393 | | |
394 | 394 | | |
395 | | - | |
| 395 | + | |
396 | 396 | | |
397 | 397 | | |
398 | 398 | | |
| |||
678 | 678 | | |
679 | 679 | | |
680 | 680 | | |
681 | | - | |
682 | | - | |
683 | | - | |
| 681 | + | |
| 682 | + | |
| 683 | + | |
684 | 684 | | |
685 | 685 | | |
686 | 686 | | |
| |||
1949 | 1949 | | |
1950 | 1950 | | |
1951 | 1951 | | |
1952 | | - | |
| 1952 | + | |
1953 | 1953 | | |
1954 | | - | |
| 1954 | + | |
| 1955 | + | |
1955 | 1956 | | |
1956 | | - | |
| 1957 | + | |
1957 | 1958 | | |
1958 | | - | |
| 1959 | + | |
1959 | 1960 | | |
1960 | | - | |
1961 | | - | |
| 1961 | + | |
1962 | 1962 | | |
1963 | 1963 | | |
1964 | 1964 | | |
| |||
2081 | 2081 | | |
2082 | 2082 | | |
2083 | 2083 | | |
2084 | | - | |
2085 | | - | |
2086 | | - | |
| 2084 | + | |
| 2085 | + | |
2087 | 2086 | | |
2088 | 2087 | | |
2089 | 2088 | | |
| |||
0 commit comments