Only consider subexpressions of the starting expression for CSE.

The current CSE will consider the input expression itself before traversing into subexpressions. The reason the CSE does not loop is because the heuristic will prevent CSE since there is only one expression according to the counter (the expression itself).