diff mc-code-powerpc.c @ 712:bf94c295d763 compiler-64bit

*** empty log message ***
author kono
date Sat, 27 Oct 2007 23:20:44 +0900
parents 35e6841ba01a
children 83e18db76c96
line wrap: on
line diff
--- a/mc-code-powerpc.c	Sat Oct 27 13:30:38 2007 +0900
+++ b/mc-code-powerpc.c	Sat Oct 27 23:20:44 2007 +0900
@@ -793,7 +793,7 @@
     function_type(fnptr->ty,&dots);
     while (args) {
         /* process in reverse order */
-        n = ncaddr(args);
+        n = ncadddr(args);
         type = n->ty;
         if (scalar(type)) {
             if ((reg = get_input_register_var(reg_var,n,is_code0))) {
@@ -801,7 +801,7 @@
                 n->dsp = cadr(reg);
                 regs[n->dsp]= INPUT_REG;
                 reg_var++;
-		arg_offset_v += (cadddr(args)=SIZE_OF_INT);
+		arg_offset_v += (caddr(args)=SIZE_OF_INT);
             }
         } else if (type==FLOAT) {
             if ((reg = get_input_dregister_var(freg_var,n,is_code0,0))) {
@@ -809,7 +809,7 @@
                 n->dsp = cadr(reg);
                 regs[n->dsp]= INPUT_REG;
                 freg_var++;
-		arg_offset_v += (cadddr(args)=size(type));
+		arg_offset_v += (caddr(args)=size(type));
             }
         } else if (type==DOUBLE) {
             if ((reg = get_input_dregister_var(freg_var,n,is_code0,1))) {
@@ -817,7 +817,7 @@
                 n->dsp = cadr(reg);
                 regs[n->dsp]= INPUT_REG;
                 freg_var++;
-		arg_offset_v += (cadddr(args)=size(type));
+		arg_offset_v += (caddr(args)=size(type));
             }
         } else if (type==LONGLONG||type==ULONGLONG) {
             if ((reg = get_input_lregister_var(reg_var,n,is_code0))) {
@@ -827,7 +827,7 @@
                 regs[regv_l(i)]= INPUT_REG;
                 regs[regv_h(i)]= INPUT_REG;
                 reg_var+=2;
-		arg_offset_v += (cadddr(args)=size(type));
+		arg_offset_v += (caddr(args)=size(type));
             }
         }
         args = cadr(args);
@@ -1390,8 +1390,8 @@
             regs[FREG_VAR_BASE-i+FREG_OFFSET]=REG_VAR; /*そのレジスタを使うことを宣言し*/
 	    if (i>max_freg_var) max_freg_var=i;
 	    /* その場所を表す番号を返す */
-	    return list3(DREGISTER,
-		FREG_VAR_BASE-i+FREG_OFFSET,(int)n); 
+	    return list3n(DREGISTER,
+		FREG_VAR_BASE-i+FREG_OFFSET,n); 
         }
     }
     return list3n(LVAR,new_lvar(SIZE_OF_DOUBLE),0);
@@ -2176,7 +2176,7 @@
     int reg_var = 0;
 
     for(args = fnptr->dsp;args;args = cadr(args)) {
-	n = ncaddr(args);
+	n = ncadddr(args);
 	tag = n->sc;
 	reg = n->dsp;
 	if (!n||n==&null_nptr) error(REG_ERR);
@@ -2212,7 +2212,7 @@
 	}
 	n->sc  = LVAR;
 	g_expr_u(assign_expr0(
-	    list3n(LVAR,n->dsp,0),list3(tag,reg,(int)n),n->ty,t));
+	    list3n(LVAR,n->dsp,0),list3n(tag,reg,n),n->ty,t));
 	if (tag==REGISTER||tag==DREGISTER||tag==FREGISTER||tag==LREGISTER) {
 	    free_register(reg);
 	}
@@ -6335,7 +6335,7 @@
 	    e1=list3n(FNAME,0,ncaddr(e1));
 	} else if (car(e1)==STRING) {
 	    val = emit_string_label();
-	    ascii(ncadr(e1)->nm);
+	    ascii(ncaddr(e1)->nm);
 	    e1=list2(LABEL,val);
 	} else if (car(e1)==CONST) {
 	} else error(-1);