Well, one more point where the current patch is probably wrong:
the AAPCS states that for volatile bit-field access: "For a write operation the read must always occur even if the entire contents of the container will be replaced" that means struct s { volatile int a:32; } ss; ss.a=1; //needs to read the value exactly once and write the new value. currently we just store. Bernd.