GetDemandedBits mostly just calls SimplifyMultipleUseDemandedBits now, but it does a very blunt constant simplification that SimplifyMultipleUseDemandedBits avoids.
I think the changes in constants are correct (sign extended immediates are good?), otherwise we should really be handling this through ShrinkDemandedConstant/targetShrinkDemandedConstant.