Existing spmd support in MLIR dialect

Hi comunity. We are working on supporting spmd sharding on MLIR.
I’ve noticed that in XLA code, the spmd support is enabled in ir_emitter, which does not pass the ir through MLIR pipeline. I’d like to know the state-of-art on handling multi-device in MLIR.

We are moving to adapt dtensor and insert it before our lowering pipeline. Will be very appreciated to hear any suggestions.