Quick Search:

Mode

Context

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

Other Diffs

Ignore

Blank Lines Whitespace: Expand:

Diff

1.178
 
1.179
 
MAIN:ragge:20140524151953
 
local.c
_>487487                 break;
 488488 
 489489         case UCALL:
<>490 -        case USTCALL:
491490                 if (kflag == 0)
 492491                         break;
<>493 -#if defined(ELFABI)
 494 -                /* Change to CALL node with ebx as argument */
495492                 l = block(REG, NIL, NIL, INT, 0, 0);
 496493                 l->n_rval = EBX;
<>497 -                p->n_right = buildtree(ASSIGN, l,
 498 -                    tempnode(gotnr, INT, 0, 0));
  494+                p->n_right = buildtree(ASSIGN, l, tempnode(gotnr, INT, 0, 0));
499495                 p->n_op -= (UCALL-CALL);
<>500 -#endif
  496+                break;
  497+
  498+        case USTCALL:
  499+                /* Add hidden arg0 */
  500+                r = block(REG, NIL, NIL, INCREF(VOID), 0, 0);
  501+                regno(r) = EBP;
  502+                if ((ap = attr_find(p->n_ap, GCC_ATYP_REGPARM)) != NULL &&
  503+                    ap->iarg(0) > 0) {
  504+                        l = block(REG, NIL, NIL, INCREF(VOID), 0, 0);
  505+                        regno(l) = EAX;
  506+                        p->n_right = buildtree(ASSIGN, l, r);
  507+                } else
  508+                        p->n_right = block(FUNARG, r, NIL, INCREF(VOID), 0, 0);
  509+                p->n_op -= (UCALL-CALL);
  510+
  511+                if (kflag == 0)
  512+                        break;
  513+                l = block(REG, NIL, NIL, INT, 0, 0);
  514+                regno(l) = EBX;
  515+                r = buildtree(ASSIGN, l, tempnode(gotnr, INT, 0, 0));
  516+                p->n_right = block(CM, r, p->n_right, INT, 0, 0);
  517+                break;
<_501518         
 502519         /* FALLTHROUGH */
 503520 #if defined(MACHOABI)
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-10-02 10:26 +0200