Just to be sure, I re-ran the comparison using gcc 4.6.3 instead of gcc 4.7.2. With gcc 4.6.3 I consistently get a few hundred bytes longer with the bitfield variant than with the pre-get_user() baseline.
I looked at some of the diffed disassembly, and the differences seem to be in the code generated downstream of __get_user_1 and __get_user_2, which I guess is to be expected, mostly in the form of padding. Annoyingly enough in *both* cases I found unnecessary instructions like: +c12f6fbb: 0f b7 d2 movzwl %dx,%edx -hpa -- 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/