changeset 674:68d70527b0c0

*** empty log message ***
author kono
date Sat, 05 May 2007 13:45:55 +0900
parents 442e90958386
children ba7110017db5
files Changes Makefile.ia32 mc-code-powerpc.c test/inline.c test/putenemy.c
diffstat 5 files changed, 38 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/Changes	Sat May 05 08:10:56 2007 +0900
+++ b/Changes	Sat May 05 13:45:55 2007 +0900
@@ -9258,4 +9258,22 @@
 は、update されない。なので、leave_scope 中で、nptr を書き換える必要がある。
 
 
-
+PS3 ppc の make diff が通らない...
+code-gen-all の inline も
+
+PPCで、inc_flag をしないと、long long の比較でしくじる
+
+PS3 ppc は、レジスタ2が予約らしい (library で使うとアウト)
+
+bitfield がずれている。
+
+
+
+Sat May  5 13:10:05 JST 2007
+
+ia32 のidiv/imull の符号の扱いがおかしいらいが....
+
+いや、これは引数の呼び出し順序の問題ですね。これを
+変えるのは不可能ではないのだが...
+
+
--- a/Makefile.ia32	Sat May 05 08:10:56 2007 +0900
+++ b/Makefile.ia32	Sat May 05 13:45:55 2007 +0900
@@ -1,12 +1,12 @@
 # CC = gcc -std=c99
 CC = cc 
 # -O3
-CFLAGS = -g -Wall -I. -DUSE_CODE_KEYWORD
+CFLAGS = -g -O -Wall -I. -DUSE_CODE_KEYWORD
 # CFLAGS = -g -Wall -I. -pg -fprofile-arcs -ftest-coverage
 # LDFLAGS = -pg
 # for Linux Zaurus
 # CFLAGS = -fsigned-char -pipe -g -I. -I/home/zaurus/develop/include
-CFLAGS1 = -g  -I.
+CFLAGS1 = -g -I.
 BASE=0
 STAGE=1
 MFLAGS=$(MFALGS) BASE=$(BASE) STAGE=$(STAGE)
--- a/mc-code-powerpc.c	Sat May 05 08:10:56 2007 +0900
+++ b/mc-code-powerpc.c	Sat May 05 13:45:55 2007 +0900
@@ -1105,7 +1105,9 @@
 	    i = REG_VAR_BASE-i;
 	} else {
 	    if (i<0||i>=MAX_INPUT_REGISTER_VAR) return 0;
+#ifndef __APPLE__
             if (i%2==1) i++;
+#endif
 	    i = i+MIN_TMP_REG;
 	}
 	ll = get_lregister1(i,i+1);
--- a/test/inline.c	Sat May 05 08:10:56 2007 +0900
+++ b/test/inline.c	Sat May 05 13:45:55 2007 +0900
@@ -268,8 +268,8 @@
      " test4\n");
 #if 0
   // error
- printf("#0270:test5 
-      test6\n");
+ //printf("#0270:test5 
+ //     test6\n");
 #endif
  printf("#0273:test7  \
       test8\n");
--- a/test/putenemy.c	Sat May 05 08:10:56 2007 +0900
+++ b/test/putenemy.c	Sat May 05 13:45:55 2007 +0900
@@ -27,7 +27,7 @@
     }
 }
 
-int Mycos(int c)
+int Mycos0(int c)
 {
     c%=360;
     if(c<0) c+=360;
@@ -38,7 +38,12 @@
     return(0);
 }
 
-int Mysin(int c)
+int Mycos(int c) {
+    printf("Mycos %d=%d\n",c,Mycos0(c));
+    return Mycos0(c);
+}
+
+int Mysin0(int c)
 {
     c%=360;
     if(c<0) c+=360;
@@ -49,6 +54,11 @@
     return(0);
 }
 
+int Mysin(int c) {
+    printf("Mysin %d=%d\n",c,Mysin0(c));
+    return Mysin0(c);
+}
+
 void
 Putenemy(int charno,float x,float y,float sx,float sy,int move) {
      if(x)
@@ -60,6 +70,7 @@
 main()
 {
      int ix=32,iy=32; float fx=32,fy=32;
+     srand(55555);
      sankakuf();
      printf("#0060:%d %d\n", Mysin(45),Mycos(-30));
      {