Skip to content

Releases: Sable/matwably

v1.1.0rc

22 Sep 22:43
Compare
Choose a tag to compare
v1.1.0rc Pre-release
Pre-release

This release contains numerous improvements over the first one:

  • New built-in framework to generate Matlab built-ins
  • Two GC analysis and their respective addition of garbage collection
  • Numerous improvements to the MatMachJS library
  • Complete refactoring of program and function generators
  • Ideas of hooks for generated statements, i.e. other code to generate in association with the stmt. For example, garbage collection stmts, or analytics over code.
  • Various optimizations:
    • LogicalVariableUtil, recognizes logicals and avoids unnecessary conversions
    • ExpressionTreeReBuild, saves locals by rebuilding expression trees
    • Peephole optimizations
    • MemoryReUse, for loops if we have loop-invariance via shape analysis, we re-use site instead of allocating a new one.
    • MatWablyBuiltinAnalysis, collects some necessary information to save generation, for the function bellow, it collects the colon information from the Matlab array get.
function print_first_dimension(a)
     disp(a(1:end))
end
% TameIR translation
function print_first_dimension(a)
     tmp1 = end(a, 1, 1)
     tmp2 = colon(1,tmp1)
     disp(a(tmp2))
end