jonathanvdc
|
ff2cea223f
Introduce the concept of bidirectional dependencies in CFG IR, define cfg_ir.CreateEdge
|
8 gadi atpakaļ |
jonathanvdc
|
a78abb6562
Demote input/output to macros in CFG IR
|
8 gadi atpakaļ |
jonathanvdc
|
7e7be8ad44
Optimize the dict iteration idiom in fast-JIT
|
8 gadi atpakaļ |
jonathanvdc
|
cafe269b87
Optimize repeated reads in CFG IR
|
8 gadi atpakaļ |
jonathanvdc
|
c79c3e9e1d
Add additional CFG construction assertions
|
8 gadi atpakaļ |
jonathanvdc
|
d6ff4c9519
Create a 'macro-positional' calling convention, 'print' macro
|
8 gadi atpakaļ |
jonathanvdc
|
d0f5a632bc
Add a 'create' method to every CFG Instruction
|
8 gadi atpakaļ |
jonathanvdc
|
59076f6d8a
Implement SSA form construction
|
8 gadi atpakaļ |
jonathanvdc
|
d4eeb6885c
Move some CFG algorithms into cfg_ir
|
8 gadi atpakaļ |
jonathanvdc
|
313cbac9e8
Make declare-local values dependent on the root node
|
8 gadi atpakaļ |
jonathanvdc
|
e3c81c30b3
Make free-root-node CFG instructions value-less
|
8 gadi atpakaļ |
jonathanvdc
|
d37555641a
Implement a value-simplifying optimization for the CFG JIT
|
8 gadi atpakaļ |
jonathanvdc
|
585d8a49b6
Apply CFG JIT intrinsics to function calls
|
8 gadi atpakaļ |
jonathanvdc
|
9801da4d04
Introduced create-node CFG values
|
8 gadi atpakaļ |
jonathanvdc
|
ee38409027
Implement trivial phi elimination
|
8 gadi atpakaļ |
jonathanvdc
|
cc101d3772
Add an optimization that replaces indirect calls by direct calls
|
8 gadi atpakaļ |
jonathanvdc
|
a995543d2c
Include function parameters in CFG IR prologs
|
8 gadi atpakaļ |
jonathanvdc
|
a3050ed8fb
Protected {alloc|free}-root-node from dead code elimination
|
8 gadi atpakaļ |
jonathanvdc
|
004bcdc1e5
Implement dead code elimination for CFGs
|
8 gadi atpakaļ |
jonathanvdc
|
33ebf2e4d1
Implement redundant check-local-exists definition elision
|
8 gadi atpakaļ |
jonathanvdc
|
26c7788786
Have definitions retain a pointer to their parent block
|
8 gadi atpakaļ |
jonathanvdc
|
24c5842aa9
Assign in-block indices to CFG definitions
|
8 gadi atpakaļ |
jonathanvdc
|
ce653f6424
Read node values before branching on them (CFG construction)
|
8 gadi atpakaļ |
jonathanvdc
|
8e3512c898
Optimize CFG flow before lowering
|
8 gadi atpakaļ |
jonathanvdc
|
b63b77637c
Separate direct and indirect CFG calls
|
8 gadi atpakaļ |
jonathanvdc
|
9f77e38393
Define 'binary', 'throw' CFG instructions
|
8 gadi atpakaļ |
jonathanvdc
|
0ed64f1e4c
Write prologs and epilogs during CFG construction
|
8 gadi atpakaļ |
jonathanvdc
|
820a780e46
Fix some bugs in CFG construction
|
8 gadi atpakaļ |
jonathanvdc
|
8b35e71fe7
Create preliminary relooper implementation
|
8 gadi atpakaļ |
jonathanvdc
|
7d2b7d2035
Implement experimental bytecode->CFG transformation
|
8 gadi atpakaļ |