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)