Project

General

Profile

« Previous | Next » 

Revision 42cef565

Added by Max Bernstein 2 months ago

Add intraprocedural flow typing (https://github.com/Shopify/zjit/pull/23)

  • Add RPO

  • Add basic flow typing

  • Add more tests, check for type bit equality

  • Run to fixpoint

  • Only use/flow types if insn has an output

  • WIP

  • WIP 2: merge pred args

  • It compiles again

  • Infer more Const instructions

  • Boot VM

  • Test displaying types

  • .

  • Use type_of more

  • Extract Param inference into its own function for readability

  • .

  • .

  • Add notion of unions to generated type bit patterns

  • .

  • .

  • Fix hierarchy for user/exact

  • .

  • .

  • .

  • Give ArraySet a receiver

  • Use Function::find consistently

  • s/fd/find/g

  • Comment

  • .

  • Add TODO about recursion

  • FrameStateId

  • Use worklist based type inference

This requires computing "uses", or at least which blocks to revisit if
their params change.

  • Just use a set

  • Revert "Just use a set"

This reverts commit 54d88be00cbf78ce7e928c66d955c968187a5ec9.

  • Revert "Use worklist based type inference"

This reverts commit e99b24629723c8848fefd5a75caa23e84c2f552e.

  • .

  • Store block params separately

  • Sparse type inference

  • Get tests passing after rebase

  • .

  • Use assert_method_hir

  • .