{
union bil t;
- t.i.hi = bcast(a)->b.b0 * bcast(b)->b.b2; // A
- t.i.lo = bcast(a)->b.b0 * bcast(b)->b.b0; // A
+ t.i.hi = (unsigned int)bcast(a)->b.b0 * bcast(b)->b.b2; // A
+ t.i.lo = (unsigned int)bcast(a)->b.b0 * bcast(b)->b.b0; // A
t.b.b3 += (unsigned char)(bcast(a)->b.b3 *
bcast(b)->b.b0); // G
t.b.b3 += (unsigned char)(bcast(a)->b.b2 *
bcast(b)->b.b1); // F
- t.i.hi += (unsigned int)(bcast(a)->b.b2 * bcast(b)->b.b0); // E <- b lost in .lst
+ t.i.hi += (unsigned int)bcast(a)->b.b2 * bcast(b)->b.b0; // E <- b lost in .lst
// bcast(a)->i.hi is free !
- t.i.hi += (unsigned int)(bcast(a)->b.b1 * bcast(b)->b.b1); // D <- b lost in .lst
+ t.i.hi += (unsigned int)bcast(a)->b.b1 * bcast(b)->b.b1; // D <- b lost in .lst
bcast(a)->bi.b3 = (unsigned char)(bcast(a)->b.b1 *
bcast(b)->b.b2);
- bcast(a)->bi.i12 = bcast(a)->b.b1 *
+ bcast(a)->bi.i12 = (unsigned int)bcast(a)->b.b1 *
bcast(b)->b.b0; // C
bcast(b)->bi.b3 = (unsigned char)(bcast(a)->b.b0 *
bcast(b)->b.b3);
- bcast(b)->bi.i12 = bcast(a)->b.b0 *
+ bcast(b)->bi.i12 = (unsigned int)bcast(a)->b.b0 *
bcast(b)->b.b1; // B
bcast(b)->bi.b0 = 0; // B
bcast(a)->bi.b0 = 0; // C