This patch extends the vector.extract(vector.transfer_read) -> scalar load patterns to support vector.transfer_read with multiple uses. For now, we check that all the uses are vector.extract operations. Supporting multiple uses is predicated under a flag. Reviewed By: hanchung Differential Revision: https://reviews.llvm.org/D150812