# HG changeset patch # User kono # Date 1082785331 -32400 # Node ID 4f459364c3345de5fadf4dc2bc712f3afdcf3cb2 # Parent 8581c314e31a46a6a7b8c33aa7470ee12c3b17ec *** empty log message *** diff -r 8581c314e31a -r 4f459364c334 Changes --- a/Changes Sat Apr 24 00:18:35 2004 +0900 +++ b/Changes Sat Apr 24 14:42:11 2004 +0900 @@ -3965,3 +3965,11 @@ a?a,b:a,b って許されるの? "" の中のマクロが展開されてしまうんですけど。(ま、そうなんだけど) + +#hoge は無視するか、そのままにするか... + +Sat Apr 24 14:39:14 JST 2004 + +long long op int, unsigned long long op int/unsigned + +ってのがあるのか.... うーん... diff -r 8581c314e31a -r 4f459364c334 Makefile --- a/Makefile Sat Apr 24 00:18:35 2004 +0900 +++ b/Makefile Sat Apr 24 14:42:11 2004 +0900 @@ -68,6 +68,7 @@ # make check TARGET=test/tmp8 make check TARGET=test/tmp9 make check TARGET=test/enum + make check TARGET=test/obsf #MK =-make MK= check-all-code: diff -r 8581c314e31a -r 4f459364c334 mc-code-powerpc.c --- a/mc-code-powerpc.c Sat Apr 24 00:18:35 2004 +0900 +++ b/mc-code-powerpc.c Sat Apr 24 14:42:11 2004 +0900 @@ -1981,7 +1981,7 @@ code_const_op_p(int op,int v) { if (op==BAND||op==DIV||op==UDIV||op==MOD||op==UMOD) return 0; - return (-127> i2; printf("tosop 9 %d\n",i); + i = i1 % i2; + printf("tosop 10 %d\n",i); u = u1 + u2; printf("tosop 1 %u\n",u); @@ -664,6 +666,8 @@ printf("tosop 8 %u\n",u); u = u1 >> u2; printf("tosop 9 %u\n",u); + u = u1 % u2; + printf("tosop 10 %u\n",u); } // oprtc(int op,int v) @@ -693,6 +697,8 @@ printf("oprtc 8 %d\n",i); i = i1 >> 5; printf("oprtc 9 %d\n",i); + i = i1 % 5; + printf("oprtc 10 %d\n",i); u = u1 + 3; printf("oprtc 1 %u\n",u); @@ -712,6 +718,8 @@ printf("oprtc 8 %u\n",u); u = u1 >> 5; printf("oprtc 9 %u\n",u); + u = u1 % 5; + printf("oprtc 10 %u\n",u); } @@ -1187,8 +1195,12 @@ { long long i1,i2,i; unsigned long long u1,u2,u; + int ii2; + unsigned int uu2; i1 = -555; i2= 555; u1 = 632423423; u2= 32394234; + ii2 = -33; + uu2 = 33; i = i1 + i2; printf("ltosop 1 %lld\n",i); @@ -1208,6 +1220,8 @@ printf("ltosop 8 %lld\n",i); i = i1 >> i2; printf("ltosop 9 %lld\n",i); + i = i1 % i2; + printf("ltosop 10 %lld\n",i); u = u1 + u2; printf("ltosop 1 %llu\n",u); @@ -1227,8 +1241,105 @@ printf("ltosop 8 %llu\n",u); u = u1 >> u2; printf("ltosop 9 %llu\n",u); + u = u1 % u2; + printf("ltosop 10 %llu\n",u); + + i = i1 + ii2; + printf("litosop 1 %lld\n",i); + i = i1 - ii2; + printf("litosop 2 %lld\n",i); + i = i1 / ii2; + printf("litosop 3 %lld\n",i); + i = i1 * ii2; + printf("litosop 4 %lld\n",i); + i = i1 | ii2; + printf("litosop 5 %lld\n",i); + i = i1 & ii2; + printf("litosop 6 %lld\n",i); + i = i1 ^ ii2; + printf("litosop 7 %lld\n",i); + i = i1 << ii2; + printf("litosop 8 %lld\n",i); + i = i1 >> ii2; + printf("litosop 9 %lld\n",i); + i = i1 % ii2; + printf("litosop 10 %lld\n",i); + + u = u1 + uu2; + printf("litosop 1 %llu\n",u); + u = u1 - uu2; + printf("litosop 2 %llu\n",u); + u = u1 / uu2; + printf("litosop 3 %llu\n",u); + u = u1 * uu2; + printf("litosop 4 %llu\n",u); + u = u1 | uu2; + printf("litosop 5 %llu\n",u); + u = u1 & uu2; + printf("litosop 6 %llu\n",u); + u = u1 ^ uu2; + printf("litosop 7 %llu\n",u); + u = u1 << uu2; + printf("litosop 8 %llu\n",u); + u = u1 >> uu2; + printf("litosop 9 %llu\n",u); + u = u1 % uu2; + printf("litosop 10 %llu\n",u); } +// loprtc(int op,int v) +void +loprtc() +{ + long long i1,i; + unsigned long long u1,u; + i1 = -555; + u1 = 632423423; + + i = i1 + 3; + printf("loprtc 1 %lld\n",i); + i = i1 - 3; + printf("loprtc 2 %lld\n",i); + i = i1 / 32323423423LL; + printf("loprtc 3 %lld\n",i); + i = i1 * 323423423423LL; + printf("loprtc 4 %lld\n",i); + i = i1 | 234234234; + printf("loprtc 5 %lld\n",i); + i = i1 & 23234234; + printf("loprtc 6 %lld\n",i); + i = i1 ^ 23234234; + printf("loprtc 7 %lld\n",i); + i = i1 << 5; + printf("loprtc 8 %lld\n",i); + i = i1 >> 5; + printf("loprtc 9 %lld\n",i); + i = i1 % 5; + printf("loprtc 10 %lld\n",i); + + u = u1 + 3; + printf("loprtc 1 %llu\n",u); + u = u1 - 3; + printf("loprtc 2 %llu\n",u); + u = u1 / 32342342344234LL; + printf("loprtc 3 %llu\n",u); + u = u1 * 243234234232324LL; + printf("loprtc 4 %llu\n",u); + u = u1 | 234234234; + printf("loprtc 5 %llu\n",u); + u = u1 & 234234234; + printf("loprtc 6 %llu\n",u); + u = u1 ^ 234234234; + printf("loprtc 7 %llu\n",u); + u = u1 << 5; + printf("loprtc 8 %llu\n",u); + u = u1 >> 5; + printf("loprtc 9 %llu\n",u); + u = u1 % 5; + printf("loprtc 10 %llu\n",u); +} + + // code_i2ll(int creg) void code_i2ll() {