fn move_to_copy_pointers<'tcx>(tcx: TyCtxt<'tcx>, body: &mut Body<'tcx>)Expand description
The SSA analysis done by SsaLocals treats Operand::Move as a read, even though in
general Operand::Move represents pass-by-pointer where the callee can overwrite the
pointee (Miri always considers the place deinitialized). CopyProp has a similar trick to
turn Operand::Move into Operand::Copy when required for an optimization, but in this
pass we just turn all moves of pointers into copies because pointers should be by-value anyway.