SymbolicUtils.jl
SymbolicUtils.jl copied to clipboard
Do an audit for which functions should be marked with @nospecialize
I suspect that most functions which are called in the process of simplify should be marked with @nospecialize, otherwise the compiler is going to be doing a ton of unnecessary work generating specialized methods every time it looks into the arguments of a term since they're not parameterized on the type of arguments or operation.
It'll take a lot of work, but it'd be worthwhile to just go through and test out which functions need this by doing a lot of benchmarking.