<div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Sun, Sep 3, 2017 at 10:41 PM Hal Finkel via llvm-commits <<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div bgcolor="#FFFFFF" text="#000000">
    <p>Nevertheless, I think that you've convinced me that this is a
    least-bad solution. I'll want a flag preserving the old behavior.
    Something like -fwiden-bitfield-accesses (modulo bikeshedding).<br></p></div></blockquote><div>Several different approaches have been discussed in this thread, I'm not sure what you mean about "least-bad solution"...</div><div><br></div><div>I remain completely unconvinced that we should change the default behavior. At most, I'm not strongly opposed to adding an attribute that indicates "please try to use narrow loads for this bitfield member" and is an error if applied to a misaligned or non-byte-sized bitfield member. But I remain strongly opposed to changing the default behavior. We have one or two cases that regress and are easily addressed by source changes (either to not use bitfields or to use an attribute). I don't think that is cause to change the lowering Clang has used for years and potentially regress many other use cases.</div></div></div>