Commit graph

11 commits

Author SHA1 Message Date
fa7fba0f98 Optimizer - Var use finder refactored 2017-12-04 07:03:54 +01:00
f1ec2cf18c Optimizer - Gather variable/resource uses
First step to build the UD chains.
2017-12-03 23:15:44 +01:00
b6f9d06be0 Optimizer - Control flow graph construction 2017-12-03 18:35:56 +01:00
c7e4ccf67e Builder tool - Various, pre-constant propagation
+ Prepared flags for constant propagation
+ UI instructions removal in compiler
+ Various changes to test "demo"
2017-12-03 14:59:39 +01:00
c4ce6e90d7 Builder tool - Logging
Added logging using F_OPLogger wherever there were traces.
2017-12-03 13:05:54 +01:00
3986bd5386 Builder tool - Logging 2017-12-02 12:18:31 +01:00
ffcf2917d5 Optimizer - Replace curve-less inputs with single default 2017-12-02 10:40:47 +01:00
f1b51f564d Optimizer - Errors when folding bad operations
Errors will be added to an array if the optimizer finds invalid
operations involving constants (e.g. (inv 0))
2017-12-02 10:07:14 +01:00
3de17b918d Optimizer - Replace constant inputs with constants 2017-12-01 23:08:05 +01:00
8f21177058 Optimizer - Partial constant folding
Handles:
* size vars in fixed size mode,
* unary operators with constant argument,
* binary operators with constant arguments.

Doesn't handle as of yet:
* constant inputs,
* folding chained, compatible binary operators, e.g. (X-2)+(3-Y)
2017-12-01 22:10:36 +01:00
0175bed077 Optimizer - Began working on constant folding 2017-12-01 07:30:03 +01:00