These are complex nodes, and it's conceivable they may end up constant
in some circumstances within node groups, so folding support is useful.
Curves evaluation code is largely copied from OSL implementation with
necessary edits. Sharing code is difficult because node classes, SVM
and OSL all use different type of storage for the curve lookup tables.