Jmk told me of this bug. Reference: /n/patches.lsub.org/patch/comp6cbug Date: Wed Jul 4 17:04:35 CES 2012 Signed-off-by: paurea@lsub.org --- /sys/src/cmd/6c/cgen.c Thu Apr 12 12:25:19 2012 +++ /sys/src/cmd/6c/cgen.c Wed Jul 4 17:03:00 2012 @@ -574,7 +574,7 @@ reglcgen(&nod, l, Z); else nod = *l; - if(o != OASMUL && o != OASADD) { + if(o != OASMUL && o != OASADD || !typefd[l->type->etype]) { regalloc(&nod2, r, Z); gmove(&nod, &nod2); gopcode(o, r->type, &nod1, &nod2);