dillon1000/react

Commit

[new-arch] Store HIR blocks in reverse postorder

* Changes HIR to store blocks in reverse postorder, which allows forward data 
flow analysis to iterate the blocks in order and (in the absence of loops) see 
all predecessors before visiting a successor. 

* Updates reference kind inference to exploit this ordering 

Note that the approach of modifying the ordering in `mapTerminalSuccessors()` 
feels gross, i'd like to split this up a bit.
Browse files
Changed paths8 files
First-parent comparison
M compiler/forget/src/HIR/HIR.ts ModifiedM compiler/forget/src/HIR/HIRBuilder.ts ModifiedM compiler/forget/src/HIR/InferReferenceCapability.ts ModifiedM compiler/forget/src/__tests__/fixtures/hir/component.expect.md ModifiedM compiler/forget/src/__tests__/fixtures/hir/conditional-break.expect.md ModifiedA compiler/forget/src/__tests__/fixtures/hir/reverse-postorder.expect.md AddedA compiler/forget/src/__tests__/fixtures/hir/reverse-postorder.js AddedM compiler/forget/src/__tests__/fixtures/hir/switch-non-final-default.expect.md Modified
Patch

Files changed

Rendering syntax-highlighted changes…