Changed on-demand value generation in anticipation of doing some sub-expression elimination