GetConstantBuildVectorBits, isConstantSplat

Is anyone going to develop acute heartburn if I move these two functions as TargetLowering methods? It seems that they’re used frequently enough across multiple backends and provide common functionality.

I could be convinced that TargetLowering is the wrong place to put these functions as methods and that they’re better off in a separate BUILD_VECTOR SDValue class.