lkml.org 
[lkml]   [2007]   [Feb]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH] Optimize generic get_unaligned / put_unaligned implementations.
    Ralf Baechle wrote:
    > Gcc info page says:
    >
    > [...]
    > `packed'
    > The `packed' attribute specifies that a variable or structure field
    > should have the smallest possible alignment--one byte for a
    > variable, and one bit for a field, unless you specify a larger
    > value with the `aligned' attribute.
    > [...]
    >
    > Qed?

    So that the compiler has to assume that if its accessing this __packed
    structure, it may be embedded unaligned within something else? And
    because the pointer is cast through (void *) it isn't allowed to use
    alias analysis to notice that the pointer wasn't originally (apparently)
    unaligned.

    Seems sound to me.

    J
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-02-16 00:09    [W:5.272 / U:0.044 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site