Hi list,
The following code fails with tcc version 0.9.25 on AMD64 (Debian): srem
and squo are correct, but urem and uquo are zero... The code works on
i386.
int main ()
{
unsigned long long int unum, uden, uquo, urem;
long long int snum, sden, squo, srem;
unum = 2111062325329920;
snum = unum;
uden = 52428800;
sden = uden;
uquo = unum / uden;
urem = unum % uden;
squo = snum / sden;
srem = snum % sden;
if (uquo != squo || urem != srem)
{
printf ("BUG:\n");
printf (" %lld != %lld\n", uquo, squo);
printf (" %lld != %lld\n", urem, srem);
}
else
printf ("OK\n");
}
Thanks,
--ghe
_______________________________________________
Tinycc-devel mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/tinycc-devel