cmd/6g: fix crash in cgen_bmul.

Used to print:
../test/torture.go:116: internal compiler error: bad width: 0463 (../test/torture.go:116) MOVB    ,BX (0, 8)

R=nigeltao, rsc
CC=golang-dev
https://golang.org/cl/6736068
diff --git a/test/torture.go b/test/torture.go
index 60870c3..4bce3a1 100644
--- a/test/torture.go
+++ b/test/torture.go
@@ -58,6 +58,64 @@
 		m[0][3]*m[1][2]*m[2][1]*m[3][0]
 }
 
+// Compute the determinant of a 4x4-matrix by the sum
+// over all index permutations.
+func determinantInt(m [4][4]int) int {
+	return m[0][0]*m[1][1]*m[2][2]*m[3][3] -
+		m[0][0]*m[1][1]*m[2][3]*m[3][2] -
+		m[0][0]*m[1][2]*m[2][1]*m[3][3] +
+		m[0][0]*m[1][2]*m[2][3]*m[3][1] +
+		m[0][0]*m[1][3]*m[2][1]*m[3][2] -
+		m[0][0]*m[1][3]*m[2][2]*m[3][1] -
+		m[0][1]*m[1][0]*m[2][2]*m[3][3] +
+		m[0][1]*m[1][0]*m[2][3]*m[3][2] +
+		m[0][1]*m[1][2]*m[2][0]*m[3][3] -
+		m[0][1]*m[1][2]*m[2][3]*m[3][0] -
+		m[0][1]*m[1][3]*m[2][0]*m[3][2] +
+		m[0][1]*m[1][3]*m[2][2]*m[3][0] +
+		m[0][2]*m[1][0]*m[2][1]*m[3][3] -
+		m[0][2]*m[1][0]*m[2][3]*m[3][1] -
+		m[0][2]*m[1][1]*m[2][0]*m[3][3] +
+		m[0][2]*m[1][1]*m[2][3]*m[3][0] +
+		m[0][2]*m[1][3]*m[2][0]*m[3][1] -
+		m[0][2]*m[1][3]*m[2][1]*m[3][0] -
+		m[0][3]*m[1][0]*m[2][1]*m[3][2] +
+		m[0][3]*m[1][0]*m[2][2]*m[3][1] +
+		m[0][3]*m[1][1]*m[2][0]*m[3][2] -
+		m[0][3]*m[1][1]*m[2][2]*m[3][0] -
+		m[0][3]*m[1][2]*m[2][0]*m[3][1] +
+		m[0][3]*m[1][2]*m[2][1]*m[3][0]
+}
+
+// Compute the determinant of a 4x4-matrix by the sum
+// over all index permutations.
+func determinantByte(m [4][4]byte) byte {
+	return m[0][0]*m[1][1]*m[2][2]*m[3][3] -
+		m[0][0]*m[1][1]*m[2][3]*m[3][2] -
+		m[0][0]*m[1][2]*m[2][1]*m[3][3] +
+		m[0][0]*m[1][2]*m[2][3]*m[3][1] +
+		m[0][0]*m[1][3]*m[2][1]*m[3][2] -
+		m[0][0]*m[1][3]*m[2][2]*m[3][1] -
+		m[0][1]*m[1][0]*m[2][2]*m[3][3] +
+		m[0][1]*m[1][0]*m[2][3]*m[3][2] +
+		m[0][1]*m[1][2]*m[2][0]*m[3][3] -
+		m[0][1]*m[1][2]*m[2][3]*m[3][0] -
+		m[0][1]*m[1][3]*m[2][0]*m[3][2] +
+		m[0][1]*m[1][3]*m[2][2]*m[3][0] +
+		m[0][2]*m[1][0]*m[2][1]*m[3][3] -
+		m[0][2]*m[1][0]*m[2][3]*m[3][1] -
+		m[0][2]*m[1][1]*m[2][0]*m[3][3] +
+		m[0][2]*m[1][1]*m[2][3]*m[3][0] +
+		m[0][2]*m[1][3]*m[2][0]*m[3][1] -
+		m[0][2]*m[1][3]*m[2][1]*m[3][0] -
+		m[0][3]*m[1][0]*m[2][1]*m[3][2] +
+		m[0][3]*m[1][0]*m[2][2]*m[3][1] +
+		m[0][3]*m[1][1]*m[2][0]*m[3][2] -
+		m[0][3]*m[1][1]*m[2][2]*m[3][0] -
+		m[0][3]*m[1][2]*m[2][0]*m[3][1] +
+		m[0][3]*m[1][2]*m[2][1]*m[3][0]
+}
+
 // A right-leaning tree of byte multiplications.
 func righttree(a, b, c, d uint8) uint8 {
 	return a * (b * (c * (d *