| 42 | } |
| 43 | |
| 44 | std::vector<int64_t> find_permutation(const shape& s) |
| 45 | { |
| 46 | std::vector<std::int64_t> result(s.lens().size()); |
| 47 | std::iota(result.begin(), result.end(), 0); |
| 48 | std::stable_sort(result.begin(), result.end(), by(std::greater<>{}, [&](auto x) { |
| 49 | return std::make_tuple(s.strides()[x], s.lens()[x]); |
| 50 | })); |
| 51 | return result; |
| 52 | } |
| 53 | |
| 54 | std::vector<int64_t> find_permutation(const std::vector<shape>& shapes) |
| 55 | { |