On 6/7/21 9:57 AM, Peter Maydell wrote:
+static uint64_t mask_to_bytemask8(uint16_t mask) +{ + return mask_to_bytemask4(mask) | + ((uint64_t)mask_to_bytemask4(mask >> 4) << 32); +}
Again, suggest to share the array from expand_pred_b.
+DO_1OP(vrev16b, 2, uint16_t, H2, bswap16) +DO_1OP(vrev32b, 4, uint32_t, H4, bswap32) +DO_1OP(vrev32h, 4, uint32_t, H4, hswap32) +DO_1OP(vrev64b, 8, uint64_t, , bswap64) +DO_1OP(vrev64h, 8, uint64_t, , hswap64) +DO_1OP(vrev64w, 8, uint64_t, , wswap64)
I've started to wonder if we shouldn't add a no-op H8, just so we don't have the empty argument for checkpatch to complain about.
And in this particular case I suppose we could H##ESIZE, which would then negate my earlier suggestion for using sizeof.
+ MVEGenOneOpFn *fns[] = {
static const, etc. r~