(2014/04/18 0:33), Sasha Levin wrote: > On 04/16/2014 01:44 AM, Masami Hiramatsu wrote: >> Same thing can be done in awk part and insn.c, and we can encode it by >> >> #define INAT_MAKE_MEMSZ(size) (size << INAT_MEMSZ_OFFS) >> >> And decode it by >> >> insn->memsz_bytes = 1 << ((attr & INAT_MEMSZ_MASK) >> INAT_MEMSZ_OFFS) >> >> Thus, we only need 3 bits to represent 1, 2, 4, 8, 16 and 32. :) > > We'll need 4 so that we could do 64 too :)
Would you mean AVX512? Actually it's not supported currently :( anyway, that's ok for me, and also, we need another 2 bits for the operands which depends on address-size prefix and operand-size prefix. > btw, why aren't we using regular bitfields? this manual encoding > thingie seems to be a bit confusing (try figuring out how many > bits are left...). Ah, right. OK, I'll try to do that :) Thank you! -- Masami HIRAMATSU Software Platform Research Dept. Linux Technology Research Center Hitachi, Ltd., Yokohama Research Laboratory E-mail: masami.hiramatsu...@hitachi.com -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/