Commit 95a27ad
committed
Auto merge of #143924 - davidtwco:sve-infrastructure, r=workingjubilee
`rustc_scalable_vector(N)`
Supercedes #118917.
Initial experimental implementation of rust-lang/rfcs#3838. Introduces a `rustc_scalable_vector(N)` attribute that can be applied to types with a single `[$ty]` field (for `u{16,32,64}`, `i{16,32,64}`, `f{32,64}`, `bool`). `rustc_scalable_vector` types are lowered to scalable vectors in the codegen backend.
As with any unstable feature, there will necessarily be follow-ups as we experiment and find cases that we've not considered or still need some logic to handle, but this aims to be a decent baseline to start from.
See #145052 for request for a lang experiment.File tree
84 files changed
+2232
-144
lines changed- compiler
- rustc_abi/src
- layout
- rustc_ast_passes
- src
- rustc_attr_parsing
- src
- attributes
- rustc_codegen_gcc/src
- intrinsic
- rustc_codegen_llvm/src
- llvm
- rustc_codegen_ssa
- src
- mir
- traits
- rustc_const_eval/src
- interpret
- util
- rustc_feature/src
- rustc_hir_analysis/src/check
- rustc_hir/src/attrs
- rustc_middle/src/ty
- rustc_mir_transform/src
- rustc_monomorphize
- src
- mono_checks
- rustc_passes/src
- rustc_public/src
- unstable/convert/stable
- rustc_span/src
- rustc_target/src
- callconv
- rustc_trait_selection/src/traits
- rustc_ty_utils/src
- layout
- tests
- codegen-llvm/scalable-vectors
- ui
- scalable-vectors
- thir-print
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
84 files changed
+2232
-144
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
60 | 60 | | |
61 | 61 | | |
62 | 62 | | |
| 63 | + | |
63 | 64 | | |
64 | 65 | | |
65 | 66 | | |
| |||
82 | 83 | | |
83 | 84 | | |
84 | 85 | | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
85 | 90 | | |
86 | 91 | | |
87 | 92 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
14 | | - | |
| 14 | + | |
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
| |||
143 | 143 | | |
144 | 144 | | |
145 | 145 | | |
146 | | - | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
147 | 152 | | |
148 | 153 | | |
149 | 154 | | |
150 | | - | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
151 | 160 | | |
152 | 161 | | |
153 | 162 | | |
154 | 163 | | |
155 | | - | |
156 | | - | |
157 | | - | |
158 | | - | |
159 | | - | |
160 | | - | |
161 | | - | |
162 | | - | |
163 | | - | |
164 | | - | |
165 | | - | |
166 | | - | |
167 | | - | |
168 | | - | |
169 | | - | |
170 | | - | |
171 | | - | |
172 | | - | |
173 | | - | |
174 | | - | |
175 | | - | |
176 | | - | |
177 | | - | |
178 | | - | |
179 | | - | |
180 | | - | |
181 | | - | |
182 | | - | |
183 | | - | |
184 | | - | |
185 | | - | |
186 | | - | |
187 | | - | |
188 | | - | |
189 | | - | |
190 | | - | |
191 | | - | |
192 | | - | |
193 | | - | |
194 | | - | |
195 | | - | |
196 | | - | |
197 | | - | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
198 | 172 | | |
199 | 173 | | |
200 | 174 | | |
| |||
453 | 427 | | |
454 | 428 | | |
455 | 429 | | |
| 430 | + | |
456 | 431 | | |
457 | 432 | | |
458 | 433 | | |
| |||
524 | 499 | | |
525 | 500 | | |
526 | 501 | | |
527 | | - | |
| 502 | + | |
| 503 | + | |
528 | 504 | | |
529 | 505 | | |
530 | 506 | | |
| |||
1501 | 1477 | | |
1502 | 1478 | | |
1503 | 1479 | | |
| 1480 | + | |
| 1481 | + | |
| 1482 | + | |
| 1483 | + | |
| 1484 | + | |
| 1485 | + | |
| 1486 | + | |
| 1487 | + | |
| 1488 | + | |
| 1489 | + | |
| 1490 | + | |
| 1491 | + | |
| 1492 | + | |
| 1493 | + | |
| 1494 | + | |
| 1495 | + | |
| 1496 | + | |
| 1497 | + | |
| 1498 | + | |
| 1499 | + | |
| 1500 | + | |
| 1501 | + | |
| 1502 | + | |
| 1503 | + | |
| 1504 | + | |
| 1505 | + | |
| 1506 | + | |
| 1507 | + | |
| 1508 | + | |
| 1509 | + | |
| 1510 | + | |
| 1511 | + | |
| 1512 | + | |
| 1513 | + | |
| 1514 | + | |
| 1515 | + | |
| 1516 | + | |
| 1517 | + | |
| 1518 | + | |
| 1519 | + | |
| 1520 | + | |
| 1521 | + | |
| 1522 | + | |
| 1523 | + | |
| 1524 | + | |
| 1525 | + | |
| 1526 | + | |
| 1527 | + | |
| 1528 | + | |
| 1529 | + | |
| 1530 | + | |
| 1531 | + | |
| 1532 | + | |
| 1533 | + | |
| 1534 | + | |
| 1535 | + | |
| 1536 | + | |
| 1537 | + | |
| 1538 | + | |
| 1539 | + | |
| 1540 | + | |
| 1541 | + | |
| 1542 | + | |
| 1543 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
155 | 155 | | |
156 | 156 | | |
157 | 157 | | |
158 | | - | |
| 158 | + | |
159 | 159 | | |
160 | 160 | | |
161 | 161 | | |
| |||
172 | 172 | | |
173 | 173 | | |
174 | 174 | | |
| 175 | + | |
175 | 176 | | |
176 | 177 | | |
177 | 178 | | |
| |||
271 | 272 | | |
272 | 273 | | |
273 | 274 | | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
274 | 282 | | |
275 | 283 | | |
276 | 284 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
96 | 96 | | |
97 | 97 | | |
98 | 98 | | |
99 | | - | |
100 | | - | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
101 | 102 | | |
| 103 | + | |
102 | 104 | | |
103 | 105 | | |
104 | 106 | | |
| |||
135 | 137 | | |
136 | 138 | | |
137 | 139 | | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
138 | 153 | | |
139 | 154 | | |
140 | 155 | | |
| |||
146 | 161 | | |
147 | 162 | | |
148 | 163 | | |
| 164 | + | |
| 165 | + | |
149 | 166 | | |
150 | 167 | | |
151 | 168 | | |
| |||
162 | 179 | | |
163 | 180 | | |
164 | 181 | | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
165 | 187 | | |
166 | 188 | | |
167 | 189 | | |
| |||
1736 | 1758 | | |
1737 | 1759 | | |
1738 | 1760 | | |
| 1761 | + | |
| 1762 | + | |
| 1763 | + | |
| 1764 | + | |
1739 | 1765 | | |
1740 | 1766 | | |
1741 | 1767 | | |
| |||
1754 | 1780 | | |
1755 | 1781 | | |
1756 | 1782 | | |
| 1783 | + | |
| 1784 | + | |
| 1785 | + | |
| 1786 | + | |
| 1787 | + | |
| 1788 | + | |
1757 | 1789 | | |
1758 | 1790 | | |
1759 | 1791 | | |
| |||
1794 | 1826 | | |
1795 | 1827 | | |
1796 | 1828 | | |
1797 | | - | |
| 1829 | + | |
| 1830 | + | |
| 1831 | + | |
1798 | 1832 | | |
1799 | 1833 | | |
1800 | 1834 | | |
| |||
1816 | 1850 | | |
1817 | 1851 | | |
1818 | 1852 | | |
1819 | | - | |
| 1853 | + | |
| 1854 | + | |
| 1855 | + | |
1820 | 1856 | | |
1821 | 1857 | | |
1822 | 1858 | | |
| |||
1831 | 1867 | | |
1832 | 1868 | | |
1833 | 1869 | | |
| 1870 | + | |
| 1871 | + | |
| 1872 | + | |
1834 | 1873 | | |
1835 | 1874 | | |
1836 | 1875 | | |
| |||
2071 | 2110 | | |
2072 | 2111 | | |
2073 | 2112 | | |
2074 | | - | |
| 2113 | + | |
| 2114 | + | |
| 2115 | + | |
2075 | 2116 | | |
2076 | 2117 | | |
2077 | 2118 | | |
| |||
2165 | 2206 | | |
2166 | 2207 | | |
2167 | 2208 | | |
| 2209 | + | |
| 2210 | + | |
| 2211 | + | |
| 2212 | + | |
| 2213 | + | |
| 2214 | + | |
| 2215 | + | |
| 2216 | + | |
| 2217 | + | |
| 2218 | + | |
| 2219 | + | |
| 2220 | + | |
| 2221 | + | |
2168 | 2222 | | |
2169 | 2223 | | |
2170 | 2224 | | |
| |||
2173 | 2227 | | |
2174 | 2228 | | |
2175 | 2229 | | |
| 2230 | + | |
2176 | 2231 | | |
2177 | 2232 | | |
2178 | 2233 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
270 | 270 | | |
271 | 271 | | |
272 | 272 | | |
| 273 | + | |
| 274 | + | |
273 | 275 | | |
274 | 276 | | |
275 | 277 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1319 | 1319 | | |
1320 | 1320 | | |
1321 | 1321 | | |
| 1322 | + | |
| 1323 | + | |
| 1324 | + | |
| 1325 | + | |
| 1326 | + | |
| 1327 | + | |
| 1328 | + | |
| 1329 | + | |
1322 | 1330 | | |
1323 | 1331 | | |
1324 | 1332 | | |
| |||
0 commit comments