• John van Groningen's avatar
    optimize fusion, reduce memory used of fusion (from iTask branch): · c68c87d6
    John van Groningen authored
    allow integers and strings as consumer for generic functions (to optimize use of generic info).
    use PR_CurriedFunction instead of PR_Curried for local macro functions that are good producers.
    check the arity of the function to be generated already in determineProducer,
    if too large, don't yield a producer which will be rejected later,
    to allow optimization of producers in subsequent arguments.
    optimize trivial function calls (with arguments) before optimizing arguments,
    treat constant function as trivial function.
    if a function call has two identical arguments,
    generate a specialized function that shares these parameters.
    specialize functions with zero arity constructor arguments,
    if the function is a generic function, or the constructor is a generic constructor.