1/* { dg-do assemble } /*
2/* { dg-options "-Os -fomit-frame-pointer -m68040" } */
3/* { dg-final { object-size text <= 72 } } */
4
5struct kobject {
6        unsigned int b7:1;
7        unsigned int :6;
8        unsigned int b0:1;
9        unsigned char x;
10        unsigned int f;
11};
12
13void ior(struct kobject *kobj) { kobj->f |= 4; }
14void ior_m(struct kobject *kobj) { kobj->f |= -4; }
15
16void xor(struct kobject *kobj) { kobj->f ^= 4; }
17void xor_m(struct kobject *kobj) { kobj->f ^= -4; }
18
19void and(struct kobject *kobj) { kobj->f &= 4; }
20void and_m(struct kobject *kobj) { kobj->f &= -4; }
21