From mboxrd@z Thu Jan 1 00:00:00 1970 Date: Sun, 10 Mar 1996 19:22:08 -0500 From: Ken Thompson ken@plan9.bell-labs.com Subject: No subject Topicbox-Message-UUID: 3f8d7178-eac8-11e9-9e20-41e7f4b1d025 Message-ID: <19960311002208.9Kv5SrfOqZ2EfS2t41oxGeoQMIXbB1Gl6xDnPK3Vljw@z> > Compiling gs, I ran cross a bug, distilled down to the > following: > > term% cat x.c > void foo() > { > char a; > int b; > char d[1]; > long e = a | (1 << b); > > while (1) d[b] = e; > } > > term% 8c x.c && 8l x.8 > foo: doasm: notfound (6) SALL BX,AX > > foo: doasm: notfound (6) SALL BX,AX > > foo: doasm: notfound (6) SALL BX,AX the fix is to add the following lines. in /sys/src/cmd/8c/peep.c 165a166,177 > case AROLB: > case AROLL: > case AROLW: > case ARORB: > case ARORL: > case ARORW: > case ASALB: > case ASALL: > case ASALW: > case ASARB: > case ASARL: > case ASARW: