Commit 133c257
authored
[3.0] Improve generator performance (#2567)
* Update ClangSharp.PInvokeGenerator
* Update comment on ModifyAllReferencesAsync in TransformHandles
* Format files using CSharpier
These were written before I installed the CSharpier plugin so they were not formatted.
* Remove GetTypeInfo call
GetTypeInfo should be unnecessary since it gets the type of an expression.
For non-type expressions (eg: `5` is an int), this isn't useful for us.
This is arguably an indirect reference to int, but the current Silk generator only cares about modifying direct references.
For type expressions (eg: `int` refers to int), GetSymbolInfo will also return the same symbol.
* Get the compilation once*
*Roslyn already caches this internally. This is mainly for avoiding the async method call.
Difference is probably not measurable, but theoretically this is faster.
* Compare against _relevantIdentifiers set before calling GetSymbolInfo
* Skip using directives
* Add ProfilingScope
* Add comment on _relevantIdentifiers
* Fix field naming convention in ProfilingScope
* Optimize document renaming in PrettifyNames
Conflict checking was O(n), now it is O(1).
* Use normalized relative paths during conflict checking
This is to prevent false negatives from mismatched path formats.
* Remove NormalizeWhitespace calls (much faster, but breaks generator)
(cherry picked from commit 8cf1324)
* Fix issue where the syntax tree gets corrupted due to reparsing
(cherry picked from commit 2c48fb6)
* Edit comment and error message
(cherry picked from commit 6b12c69)
* Avoid normalizing the syntax node twice when formatting
* Avoid rebuilding the _relevantIdentifiers set for every document
* Move collections in ResolveConflictsProcessor to be closer to where they are used
* Preserve original line ending behavior
(cherry picked from commit 66d0daa)
* Update SDL to v3.44 from v3.2.4 to fix compile error
* Revert change to get the compilation once during ModifyAllReferencesAsync
This change caused incorrect behavior since the document ids can come from projects other than the source project (namely the test project).
This broken when semantic models were requested for test project documents from the source project compilation.
* Revert "Update SDL to v3.44 from v3.2.4 to fix compile error"
This reverts commit 00d83bc.
* Revert "Update ClangSharp.PInvokeGenerator"
This reverts commit 7938a0c.
* Revert "Preserve original line ending behavior"
This reverts commit 364015d.
* Add comment on why UsingDirectiveSyntaxes are skipped1 parent 9d21e44 commit 133c257
23 files changed
Lines changed: 263 additions & 170 deletions
File tree
- sources/SilkTouch/SilkTouch
- Mods
- Common
- LocationTransformation
- Transformation
- Profiling
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
265 | 265 | | |
266 | 266 | | |
267 | 267 | | |
268 | | - | |
269 | | - | |
270 | | - | |
| 268 | + | |
271 | 269 | | |
272 | 270 | | |
273 | 271 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
72 | 72 | | |
73 | 73 | | |
74 | 74 | | |
75 | | - | |
76 | | - | |
77 | | - | |
78 | | - | |
79 | | - | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
80 | 79 | | |
81 | 80 | | |
82 | 81 | | |
| |||
107 | 106 | | |
108 | 107 | | |
109 | 108 | | |
110 | | - | |
111 | | - | |
| 109 | + | |
112 | 110 | | |
113 | 111 | | |
114 | 112 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1454 | 1454 | | |
1455 | 1455 | | |
1456 | 1456 | | |
1457 | | - | |
1458 | | - | |
| 1457 | + | |
1459 | 1458 | | |
1460 | 1459 | | |
1461 | 1460 | | |
| |||
1515 | 1514 | | |
1516 | 1515 | | |
1517 | 1516 | | |
1518 | | - | |
1519 | | - | |
1520 | | - | |
1521 | | - | |
1522 | | - | |
| 1517 | + | |
1523 | 1518 | | |
1524 | 1519 | | |
1525 | 1520 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
391 | 391 | | |
392 | 392 | | |
393 | 393 | | |
394 | | - | |
| 394 | + | |
395 | 395 | | |
396 | 396 | | |
397 | 397 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
59 | 59 | | |
60 | 60 | | |
61 | 61 | | |
62 | | - | |
| 62 | + | |
| 63 | + | |
63 | 64 | | |
64 | 65 | | |
65 | 66 | | |
| |||
91 | 92 | | |
92 | 93 | | |
93 | 94 | | |
94 | | - | |
| 95 | + | |
95 | 96 | | |
96 | 97 | | |
97 | 98 | | |
| |||
116 | 117 | | |
117 | 118 | | |
118 | 119 | | |
119 | | - | |
120 | | - | |
121 | | - | |
122 | | - | |
123 | | - | |
124 | | - | |
125 | | - | |
126 | | - | |
127 | | - | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
128 | 128 | | |
129 | | - | |
| 129 | + | |
130 | 130 | | |
131 | 131 | | |
132 | 132 | | |
| |||
140 | 140 | | |
141 | 141 | | |
142 | 142 | | |
143 | | - | |
144 | | - | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
145 | 146 | | |
146 | | - | |
| 147 | + | |
147 | 148 | | |
148 | 149 | | |
149 | 150 | | |
| |||
159 | 160 | | |
160 | 161 | | |
161 | 162 | | |
162 | | - | |
163 | | - | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
164 | 166 | | |
165 | | - | |
| 167 | + | |
166 | 168 | | |
167 | 169 | | |
168 | 170 | | |
| |||
Lines changed: 3 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
308 | 308 | | |
309 | 309 | | |
310 | 310 | | |
311 | | - | |
312 | | - | |
313 | | - | |
314 | | - | |
315 | | - | |
316 | | - | |
317 | | - | |
318 | | - | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
319 | 314 | | |
320 | 315 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
51 | 51 | | |
52 | 52 | | |
53 | 53 | | |
54 | | - | |
| 54 | + | |
55 | 55 | | |
56 | 56 | | |
57 | 57 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
86 | 86 | | |
87 | 87 | | |
88 | 88 | | |
89 | | - | |
| 89 | + | |
90 | 90 | | |
91 | 91 | | |
92 | 92 | | |
| |||
110 | 110 | | |
111 | 111 | | |
112 | 112 | | |
113 | | - | |
114 | | - | |
| 113 | + | |
115 | 114 | | |
116 | 115 | | |
117 | 116 | | |
| |||
174 | 173 | | |
175 | 174 | | |
176 | 175 | | |
177 | | - | |
178 | | - | |
| 176 | + | |
179 | 177 | | |
180 | 178 | | |
181 | 179 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
48 | 48 | | |
49 | 49 | | |
50 | 50 | | |
51 | | - | |
| 51 | + | |
52 | 52 | | |
53 | 53 | | |
54 | 54 | | |
| |||
Lines changed: 17 additions & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
17 | | - | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
18 | 21 | | |
19 | 22 | | |
20 | 23 | | |
21 | 24 | | |
22 | 25 | | |
23 | | - | |
| 26 | + | |
| 27 | + | |
24 | 28 | | |
25 | 29 | | |
26 | 30 | | |
27 | 31 | | |
28 | 32 | | |
29 | | - | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
30 | 36 | | |
31 | 37 | | |
32 | 38 | | |
33 | 39 | | |
34 | 40 | | |
35 | 41 | | |
36 | 42 | | |
37 | | - | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
38 | 47 | | |
39 | | - | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
40 | 51 | | |
41 | 52 | | |
42 | 53 | | |
| |||
68 | 79 | | |
69 | 80 | | |
70 | 81 | | |
71 | | - | |
| 82 | + | |
72 | 83 | | |
73 | 84 | | |
74 | 85 | | |
| |||
0 commit comments