} else {
//FIXME: this code is probably wrong
final MatrixOffset offset = m.addr.offset();
final int cols = m.cols();
for (int row=0; row<m.rows(); row++) {
System.arraycopy(m.$, offset.op(), data, row*cols, cols);
offset.nextRow();
}
}
return data;
}