Quick Search:

Mode

Context

Displaying 3 lines of context. None | Less | More | Full

Other Diffs

Ignore

Blank Lines Whitespace: Expand:

Diff

1.19
 
1.20
 
MAIN:ragge:20110713123524
 
local.c
_>8383                         /* fake up a structure reference */
 8484                         r = block( REG, NIL, NIL, PTR+STRTY, 0, 0 );
 8585                         r->n_lval = 0;
<>86 -                        r->n_rval = (q->sclass==PARAM?ARGREG:STKREG);
  86+                        r->n_rval = (q->sclass==PARAM?ARGREG:FPREG);
8787                         p = stref( block( STREF, r, p, 0, 0, 0 ) );
 8888                         break;
 8989                 }
     
 !
190190 {
 191191         struct symtab *sp;
 192192 
<> 193+        if ((cdope(p->n_op) & CALLFLG) && p->n_left->n_op == ADDROF &&
  194+            p->n_left->n_left->n_op == NAME) {
  195+                NODE *q = p->n_left->n_left;
  196+                nfree(p->n_left);
  197+                p->n_left = q;
  198+                q->n_op = ICON;
  199+        }
  200+
193201         if (p->n_op != FCON)
 194202                 return;
 195203 
     
 !
217225 int
 218226 andable(NODE *p)
 219227 {
<>220 -
 221 -        if ((p->n_type & ~BTMASK) == FTN)
 222 -                return 1; /* functions are called by name */
 223 -        return 0; /* Delay name reference to table, for PIC code generation */
  228+        /* for now, delay name reference to table, for PIC code generation */
  229+        /* functions are called by name, convert they in myp2tree */
  230+        return 0;
224231 }
<>225 - 
  232+
  233+/* is an automatic variable of type t OK for a register variable */
226234 int
<>227 -cisreg( t ) TWORD t; { /* is an automatic variable of type t OK for a register variable */
  235+cisreg(TWORD t)
  236+{
228237         return(1);      /* all are now */
<>229 -        }
  238+}
230239 
 231240 void
 232241 spalloc(NODE *t, NODE *p, OFFSZ off)
     
 !
243252         return( p );
 244253         }
 245254 
<> 255+/* map types which are not defined on the local machine */
246256 TWORD
<>247 -ctype(TWORD type ){ /* map types which are not defined on the local machine */
  257+ctype(TWORD type) {
<_248258         switch( BTYPE(type) ){
 249259 
 250260         case LONG:
FishEye: Open Source License registered to PCC.
Your maintenance has expired. You can renew your license at http://www.atlassian.com/fisheye/renew
Atlassian FishEye, CVS analysis. (Version:1.6.3 Build:build-336 2008-11-04) - Administration - Page generated 2014-07-10 07:06 +0200