Mercurial > hg > CbC > old > device
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);