Commit 9294da4
Enable sharing of state elements between continuation values and static variables with superficially different layouts. For example, bits[64] and (bits[64]). This sharing is done by LeafTypeTree index. This allows sharing of state elements between base and derived classes, for example. It also allows unused parts of a struct to be pruned.
- Replaced NamedDecl* with DeclLeaf for continuations, where DeclLeaf also indicates the LeafTypeTree element index of the continuation values.
- Also fixes small bugs with pass through finding and direct in marking.
- Changes to the data flow visitor are needed to support these fixes. For example, a select between two direct ins with a non-direct-in selector should not be marked as direct-in.
PiperOrigin-RevId: 8614568581 parent 4201434 commit 9294da4
File tree
19 files changed
+2215
-281
lines changed- xls
- contrib/xlscc
- unit_tests
- testdata
- passes
19 files changed
+2215
-281
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
160 | 160 | | |
161 | 161 | | |
162 | 162 | | |
| 163 | + | |
163 | 164 | | |
164 | 165 | | |
165 | 166 | | |
| |||
253 | 254 | | |
254 | 255 | | |
255 | 256 | | |
| 257 | + | |
256 | 258 | | |
257 | 259 | | |
258 | 260 | | |
| |||
0 commit comments