Quick Search:

Mode

Context

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

Other Diffs

Ignore

Blank Lines Whitespace: Expand:

Diff

1.6
 
1.7
 
MAIN:ragge:20090606124237
 
local.c
_>311311                 nfree(l);
 312312                 break;
 313313 
<> 314+        case CALL:
  315+        case STCALL:
  316+                if (p->n_type == VOID)
  317+                        break; /* nothing to do */
  318+
  319+                /* have the call at left of a COMOP to avoid arg trashing */
  320+                r = tempnode(0, p->n_type, p->n_df, p->n_sue);
  321+                m = regno(r);
  322+                r = buildtree(ASSIGN, r, p);
  323+                p = tempnode(m, r->n_type, r->n_df, r->n_sue);
  324+                p = buildtree(COMOP, r, p);
  325+                break;
  326+
314327         case UCALL:
 315328         case USTCALL:
 316329                 if (kflag == 0)
     
 !
699712 {
 700713         NODE *sp;
 701714 
<> 715+cerror("spalloc");
702716         p = buildtree(MUL, p, bcon(off/SZCHAR)); /* XXX word alignment? */
 703717 
 704718         /* sub the size from sp */
     
 !
816830 
 817831         t = p->n_type;
 818832         if (t > BTMASK)
<>819 -                t = INT; /* pointer */
  833+                t = LONG; /* pointer */
820834 
 821835         while (p->n_op == SCONV || p->n_op == PCONV) {
 822836                 NODE *l = p->n_left;
     
 !
836850         if (p->n_op != ICON && p->n_op != FCON)
 837851                 cerror("ninval: init node not constant");
 838852 
<>839 -        if (p->n_op == ICON && p->n_sp != NULL && DEUNSIGN(t) != INT)
  853+        if (p->n_op == ICON && p->n_sp != NULL && DEUNSIGN(t) != LONG)
840854                 uerror("element not constant");
 841855 
 842856         switch (t) {
 843857         case LONG:
 844858         case ULONG:
<>845 -                printf("\t.long 0x%llx", p->n_lval);
  859+                printf("\t.quad 0x%llx", p->n_lval);
<_846860                 if ((q = p->n_sp) != NULL) {
 847861                         if ((q->sclass == STATIC && q->slevel > 0)) {
 848862                                 printf("+" LABFMT, q->soffset);
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-11-01 01:33 +0100