Mercurial > hg > CbC > old > device
diff test/code-gen.c @ 255:8cd8d72286ae
PowerPC long long complex function call fix.
MIPS entry frame calc.
author | kono |
---|---|
date | Fri, 14 May 2004 20:57:52 +0900 |
parents | c68f618b71f9 |
children | 87b9cfc86a10 |
line wrap: on
line diff
--- a/test/code-gen.c Wed May 12 21:44:45 2004 +0900 +++ b/test/code-gen.c Fri May 14 20:57:52 2004 +0900 @@ -526,45 +526,46 @@ { register int i1; register unsigned int ui1; + int a = 3; i1 = -555; ui1 = 632423423; - i1 += 3; + i1 += a; printf("code_assop 1 %d\n",i1); - i1 -= 3; + i1 -= a; printf("code_assop 2 %d\n",i1); - i1 /= 3; + i1 /= a; printf("code_assop 3 %d\n",i1); - i1 *= 3; + i1 *= a; printf("code_assop 4 %d\n",i1); - i1 |= 234; + i1 |= a; printf("code_assop 5 %d\n",i1); - i1 &= 23244234; + i1 &= a; printf("code_assop 6 %d\n",i1); - i1 ^= 55244234; + i1 ^= a; printf("code_assop 7 %d\n",i1); - i1 <<= 3; + i1 <<= a; printf("code_assop 8 %d\n",i1); - i1 >>= 3; + i1 >>= a; printf("code_assop 9 %d\n",i1); - ui1 += 3; + ui1 += a; printf("code_assop 1 %u\n",ui1); - ui1 -= 3; + ui1 -= a; printf("code_assop 2 %u\n",ui1); - ui1 /= 3; + ui1 /= a; printf("code_assop 3 %u\n",ui1); - ui1 *= 3; + ui1 *= a; printf("code_assop 4 %u\n",ui1); - ui1 |= 234; + ui1 |= a; printf("code_assop 5 %u\n",ui1); - ui1 &= 23234234; + ui1 &= a; printf("code_assop 6 %u\n",ui1); - ui1 ^= 55234234; + ui1 ^= a; printf("code_assop 7 %u\n",ui1); - ui1 <<= 3; + ui1 <<= a; printf("code_assop 8 %u\n",ui1); - ui1 >>= 3; + ui1 >>= a; printf("code_assop 9 %u\n",ui1); } @@ -574,46 +575,144 @@ { int i1,i2; unsigned int ui1,ui2; + int a = 3; + i1 = -555; i2= 555; + ui1 = 632423423; ui2= 32394234; + + i1 += a; + printf("code_assop 1 %d\n",i1); + i1 -= a; + printf("code_assop 2 %d\n",i1); + i1 /= a; + printf("code_assop 3 %d\n",i1); + i1 *= a; + printf("code_assop 4 %d\n",i1); + i1 |= a; + printf("code_assop 5 %d\n",i1); + i1 &= a; + printf("code_assop 6 %d\n",i1); + i1 ^= a; + printf("code_assop 7 %d\n",i1); + i1 <<= a; + printf("code_assop 8 %d\n",i1); + i1 >>= a; + printf("code_assop 9 %d\n",i1); + + ui1 += a; + printf("code_assop 1 %u\n",ui1); + ui1 -= a; + printf("code_assop 2 %u\n",ui1); + ui1 /= a; + printf("code_assop 3 %u\n",ui1); + ui1 *= a; + printf("code_assop 4 %u\n",ui1); + ui1 |= a; + printf("code_assop 5 %u\n",ui1); + ui1 &= a; + printf("code_assop 6 %u\n",ui1); + ui1 ^= a; + printf("code_assop 7 %u\n",ui1); + ui1 <<= a; + printf("code_assop 8 %u\n",ui1); + ui1 >>= a; + printf("code_assop 9 %u\n",ui1); +} + + +// code_register_assop(int e2,int op,int byte) +void +code_register_assop_const() +{ + register int i1; + register unsigned int ui1; + i1 = -555; + ui1 = 632423423; + + i1 += 3; + printf("code_assop c 1 %d\n",i1); + i1 -= 3; + printf("code_assop c 2 %d\n",i1); + i1 /= 3; + printf("code_assop c 3 %d\n",i1); + i1 *= 3; + printf("code_assop c 4 %d\n",i1); + i1 |= 234; + printf("code_assop c 5 %d\n",i1); + i1 &= 23244234; + printf("code_assop c 6 %d\n",i1); + i1 ^= 55244234; + printf("code_assop c 7 %d\n",i1); + i1 <<= 3; + printf("code_assop c 8 %d\n",i1); + i1 >>= 3; + printf("code_assop c 9 %d\n",i1); + + ui1 += 3; + printf("code_assop c 1 %u\n",ui1); + ui1 -= 3; + printf("code_assop c 2 %u\n",ui1); + ui1 /= 3; + printf("code_assop c 3 %u\n",ui1); + ui1 *= 3; + printf("code_assop c 4 %u\n",ui1); + ui1 |= 234; + printf("code_assop c 5 %u\n",ui1); + ui1 &= 23234234; + printf("code_assop c 6 %u\n",ui1); + ui1 ^= 55234234; + printf("code_assop c 7 %u\n",ui1); + ui1 <<= 3; + printf("code_assop c 8 %u\n",ui1); + ui1 >>= 3; + printf("code_assop c 9 %u\n",ui1); +} + +// code_assop(int op,int byte,int sign) +void +code_assop_const() +{ + int i1,i2; + unsigned int ui1,ui2; i1 = -555; i2= 555; ui1 = 632423423; ui2= 32394234; i1 += 3; - printf("code_assop 1 %d\n",i1); + printf("code_assop c 1 %d\n",i1); i1 -= 3; - printf("code_assop 2 %d\n",i1); + printf("code_assop c 2 %d\n",i1); i1 /= 3; - printf("code_assop 3 %d\n",i1); + printf("code_assop c 3 %d\n",i1); i1 *= 3; - printf("code_assop 4 %d\n",i1); + printf("code_assop c 4 %d\n",i1); i1 |= 234; - printf("code_assop 5 %d\n",i1); + printf("code_assop c 5 %d\n",i1); i1 &= 23234234; - printf("code_assop 6 %d\n",i1); + printf("code_assop c 6 %d\n",i1); i1 ^= 55444234; - printf("code_assop 7 %d\n",i1); + printf("code_assop c 7 %d\n",i1); i1 <<= 3; - printf("code_assop 8 %d\n",i1); + printf("code_assop c 8 %d\n",i1); i1 >>= 3; - printf("code_assop 9 %d\n",i1); + printf("code_assop c 9 %d\n",i1); ui1 += 3; - printf("code_assop 1 %u\n",ui1); + printf("code_assop c 1 %u\n",ui1); ui1 -= 3; - printf("code_assop 2 %u\n",ui1); + printf("code_assop c 2 %u\n",ui1); ui1 /= 3; - printf("code_assop 3 %u\n",ui1); + printf("code_assop c 3 %u\n",ui1); ui1 *= 3; - printf("code_assop 4 %u\n",ui1); + printf("code_assop c 4 %u\n",ui1); ui1 |= 234; - printf("code_assop 5 %u\n",ui1); + printf("code_assop c 5 %u\n",ui1); ui1 &= 23234234; - printf("code_assop 6 %u\n",ui1); + printf("code_assop c 6 %u\n",ui1); ui1 ^= 54234234; - printf("code_assop 7 %u\n",ui1); + printf("code_assop c 7 %u\n",ui1); ui1 <<= 3; - printf("code_assop 8 %u\n",ui1); + printf("code_assop c 8 %u\n",ui1); ui1 >>= 3; - printf("code_assop 9 %u\n",ui1); + printf("code_assop c 9 %u\n",ui1); } @@ -1248,23 +1347,17 @@ printf("ltosop 6 %lld\n",i); i = i1 ^ i2; printf("ltosop 7 %lld\n",i); - printf("ltosop uuu -2 %llu=%llu/%llu\n",u,u1,u2); i = i1 << i2; printf("ltosop 8 %lld\n",i); - printf("ltosop uuu -1 %llu=%llu/%llu\n",u,u1,u2); i = i1 >> i2; - printf("ltosop uuu 0 %llu=%llu/%llu\n",u,u1,u2); printf("ltosop 9 %lld\n",i); i = i1 % i2; - printf("ltosop uuu 0.0 %llu=%llu/%llu\n",u,u1,u2); printf("ltosop 10 %lld\n",i); - printf("ltosop uuu 1 %llu=%llu/%llu\n",u,u1,u2); u = u1 + u2; printf("ltosop u 1 %llu\n",u); u = u1 - u2; printf("ltosop u 2 %llu\n",u); - printf("ltosop uuu 2 %llu=%llu/%llu\n",u,u1,u2); u = u1 / u2; printf("ltosop u 3 %llu\n",u); u = u1 * u2; @@ -1303,7 +1396,6 @@ i = i1 % ii2; printf("litosop 10 %lld\n",i); - printf("litosop uuu %llu=%llu+%u\n",u,u1,uu2); u = u1 + uu2; printf("litosop u 1 %llu\n",u); u = u1 - uu2; @@ -1586,45 +1678,46 @@ { register long long i1; register unsigned long long ui1; + long long a = 3; i1 = -555; ui1 = 632423423; - i1 += 3; + i1 += a; printf("code_register_lassop 1 %lld\n",i1); - i1 -= 3; + i1 -= a; printf("code_register_lassop 2 %lld\n",i1); - i1 /= 3; + i1 /= a; printf("code_register_lassop 3 %lld\n",i1); - i1 *= 3; + i1 *= a; printf("code_register_lassop 4 %lld\n",i1); - i1 |= 234; + i1 |= a; printf("code_register_lassop 5 %lld\n",i1); - i1 &= 2324234234234234LL; + i1 &= a; printf("code_register_lassop 6 %lld\n",i1); - i1 ^= 5523234234234234LL; + i1 ^= a; printf("code_register_lassop 7 %lld\n",i1); - i1 <<= 3; + i1 <<= a; printf("code_register_lassop 8 %lld\n",i1); - i1 >>= 3; + i1 >>= a; printf("code_register_lassop 9 %lld\n",i1); - ui1 += 3; + ui1 += a; printf("code_register_lassop 1 %llu\n",ui1); - ui1 -= 3; + ui1 -= a; printf("code_register_lassop 2 %llu\n",ui1); - ui1 /= 3; + ui1 /= a; printf("code_register_lassop 3 %llu\n",ui1); - ui1 *= 3; + ui1 *= a; printf("code_register_lassop 4 %llu\n",ui1); - ui1 |= 234; + ui1 |= a; printf("code_register_lassop 5 %llu\n",ui1); - ui1 &= 2324234234234234LL; + ui1 &= a; printf("code_register_lassop 6 %llu\n",ui1); - ui1 ^= 5523234234234234LL; + ui1 ^= a; printf("code_register_lassop 7 %llu\n",ui1); - ui1 <<= 3; + ui1 <<= a; printf("code_register_lassop 8 %llu\n",ui1); - ui1 >>= 3; + ui1 >>= a; printf("code_register_lassop 9 %llu\n",ui1); } @@ -1634,46 +1727,143 @@ { long long i1,i2; unsigned long long ui1,ui2; + long long a = 3; + i1 = -555; i2= 555; + ui1 = 632423423; ui2= 32394234; + + i1 += a; + printf("code_lassop 1 %lld\n",i1); + i1 -= a; + printf("code_lassop 2 %lld\n",i1); + i1 /= a; + printf("code_lassop 3 %lld\n",i1); + i1 *= a; + printf("code_lassop 4 %lld\n",i1); + i1 |= a; + printf("code_lassop 5 %lld\n",i1); + i1 &= a; + printf("code_lassop 6 %lld\n",i1); + i1 ^= a; + printf("code_lassop 7 %lld\n",i1); + i1 <<= a; + printf("code_lassop 8 %lld\n",i1); + i1 >>= a; + printf("code_lassop 9 %lld\n",i1); + + ui1 += a; + printf("code_lassop 1 %llu\n",ui1); + ui1 -= a; + printf("code_lassop 2 %llu\n",ui1); + ui1 /= a; + printf("code_lassop 3 %llu\n",ui1); + ui1 *= a; + printf("code_lassop 4 %llu\n",ui1); + ui1 |= a; + printf("code_lassop 5 %llu\n",ui1); + ui1 &= a; + printf("code_lassop 6 %llu\n",ui1); + ui1 ^= a; + printf("code_lassop 7 %llu\n",ui1); + ui1 <<= a; + printf("code_lassop 8 %llu\n",ui1); + ui1 >>= a; + printf("code_lassop 9 %llu\n",ui1); +} + +// code_register_assop(int e2,int op,int byte) +void +code_register_lassop_const() +{ + register long long i1; + register unsigned long long ui1; + i1 = -555; + ui1 = 632423423; + + i1 += 3; + printf("code_register_lassop c 1 %lld\n",i1); + i1 -= 3; + printf("code_register_lassop c 2 %lld\n",i1); + i1 /= 3; + printf("code_register_lassop c 3 %lld\n",i1); + i1 *= 3; + printf("code_register_lassop c 4 %lld\n",i1); + i1 |= 234; + printf("code_register_lassop c 5 %lld\n",i1); + i1 &= 2324234234234234LL; + printf("code_register_lassop c 6 %lld\n",i1); + i1 ^= 5523234234234234LL; + printf("code_register_lassop c 7 %lld\n",i1); + i1 <<= 3; + printf("code_register_lassop c 8 %lld\n",i1); + i1 >>= 3; + printf("code_register_lassop c 9 %lld\n",i1); + + ui1 += 3; + printf("code_register_lassop c 1 %llu\n",ui1); + ui1 -= 3; + printf("code_register_lassop c 2 %llu\n",ui1); + ui1 /= 3; + printf("code_register_lassop c 3 %llu\n",ui1); + ui1 *= 3; + printf("code_register_lassop c 4 %llu\n",ui1); + ui1 |= 234; + printf("code_register_lassop c 5 %llu\n",ui1); + ui1 &= 2324234234234234LL; + printf("code_register_lassop c 6 %llu\n",ui1); + ui1 ^= 5523234234234234LL; + printf("code_register_lassop c 7 %llu\n",ui1); + ui1 <<= 3; + printf("code_register_lassop c 8 %llu\n",ui1); + ui1 >>= 3; + printf("code_register_lassop c 9 %llu\n",ui1); +} + +// code_lassop(int op,int byte,int sign) +void +code_lassop_const() +{ + long long i1,i2; + unsigned long long ui1,ui2; i1 = -555; i2= 555; ui1 = 632423423; ui2= 32394234; i1 += 3; - printf("code_lassop 1 %lld\n",i1); + printf("code_lassop c 1 %lld\n",i1); i1 -= 3; - printf("code_lassop 2 %lld\n",i1); + printf("code_lassop c 2 %lld\n",i1); i1 /= 3; - printf("code_lassop 3 %lld\n",i1); + printf("code_lassop c 3 %lld\n",i1); i1 *= 3; - printf("code_lassop 4 %lld\n",i1); + printf("code_lassop c 4 %lld\n",i1); i1 |= 234; - printf("code_lassop 5 %lld\n",i1); + printf("code_lassop c 5 %lld\n",i1); i1 &= 2324234234234234LL; - printf("code_lassop 6 %lld\n",i1); + printf("code_lassop c 6 %lld\n",i1); i1 ^= 5523234234234234LL; - printf("code_lassop 7 %lld\n",i1); + printf("code_lassop c 7 %lld\n",i1); i1 <<= 3; - printf("code_lassop 8 %lld\n",i1); + printf("code_lassop c 8 %lld\n",i1); i1 >>= 3; - printf("code_lassop 9 %lld\n",i1); + printf("code_lassop c 9 %lld\n",i1); ui1 += 3; - printf("code_lassop 1 %llu\n",ui1); + printf("code_lassop c 1 %llu\n",ui1); ui1 -= 3; - printf("code_lassop 2 %llu\n",ui1); + printf("code_lassop c 2 %llu\n",ui1); ui1 /= 3; - printf("code_lassop 3 %llu\n",ui1); + printf("code_lassop c 3 %llu\n",ui1); ui1 *= 3; - printf("code_lassop 4 %llu\n",ui1); + printf("code_lassop c 4 %llu\n",ui1); ui1 |= 234; - printf("code_lassop 5 %llu\n",ui1); + printf("code_lassop c 5 %llu\n",ui1); ui1 &= 2324234234234234LL; - printf("code_lassop 6 %llu\n",ui1); + printf("code_lassop c 6 %llu\n",ui1); ui1 ^= 5523234234234234LL; - printf("code_lassop 7 %llu\n",ui1); + printf("code_lassop c 7 %llu\n",ui1); ui1 <<= 3; - printf("code_lassop 8 %llu\n",ui1); + printf("code_lassop c 8 %llu\n",ui1); ui1 >>= 3; - printf("code_lassop 9 %llu\n",ui1); + printf("code_lassop c 9 %llu\n",ui1); } // code_lgt(int cond)