Quick Search:

Mode

Context

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

Other Diffs

Ignore

Blank Lines Whitespace: Expand:

Diff

1.38
 
1.39
 
MAIN:ragge:20060610150523
 
local.c
_>8787                         }
 8888                 break;
 8989 
<> 90+        case STCALL:
9091         case CALL:
 9192                 /* Fix function call arguments. On x86, just add funarg */
 9293                 for (r = p->n_right; r->n_op == CM; r = r->n_left) {
     
 !
253254                 p->n_left = block(REG, NIL, NIL, p->n_type, 0, MKSUE(INT));
 254255                 p->n_left->n_rval = RETREG(p->n_type);
 255256                 break;
<> 257+
  258+        case LS:
  259+        case RS:
  260+                /* shift count must be in a char
  261+                 * unless longlong, where it must be int */
  262+                if (p->n_right->n_op == ICON)
  263+                        break; /* do not do anything */
  264+                if (p->n_type == LONGLONG || p->n_type == ULONGLONG) {
  265+                        if (p->n_right->n_type != INT)
  266+                                p->n_right = block(SCONV, p->n_right, NIL,
  267+                                    INT, 0, MKSUE(INT));
  268+                        break;
  269+                }
  270+                if (p->n_right->n_type == CHAR || p->n_right->n_type == UCHAR)
  271+                        break;
  272+                p->n_right = block(SCONV, p->n_right, NIL,
  273+                    CHAR, 0, MKSUE(CHAR));
  274+                break;
<_256275         }
 257276 //printf("ut:\n");
 258277 //fwalk(p, eprint, 0);
FishEye: Open Source License registered to PCC.
Atlassian FishEye, CVS analysis. (Version:1.6.3 Build:build-336 2008-11-04) - Administration - Page generated 2014-12-21 09:33 +0100