Quick Search:

Mode

Context

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

Other Diffs

Ignore

Blank Lines Whitespace: Expand:

Diff

1.260
 
1.261
 
MAIN:ragge:20100612082813
 
reader.c
_>10841084 # else
 10851085                 o = szty(p->n_type)*SZINT - s - UPKFOFF(v);  /* amount to shift */
 10861086 #endif
<>1087 -
10881087                 /* make & mask part */
 10891088 
 10901089                 if (ISUNSIGNED(ty)) {
     
 !
11011100                                 /* whew! */
 11021101                         }
 11031102                 } else {
<> 1103+                        int mz;
  1104+
  1105+#define SZT(x) case x: mz = SZ ## x; break;
  1106+                        switch (ty) {
  1107+                        SZT(CHAR) SZT(SHORT) SZT(INT) SZT(LONG)
  1108+                        SZT(LONGLONG)
  1109+                        }
11041110                         /* must sign-extend, assume RS will do */
 11051111                         /* if not, arch must use rewfld() */
<>1106 -                        p->n_left->n_type = INT; /* Ok? */
  1112+                        p->n_left->n_type = ty;
11071113                         p->n_op = RS;
<>1108 -                        p->n_right = mklnode(ICON, SZINT-s, 0, INT);
  1114+                        p->n_right = mklnode(ICON, mz-s, 0, INT);
11091115                         p->n_left = mkbinode(LS, p->n_left,
<>1110 -                            mklnode(ICON, SZINT-s-o, 0, INT), INT);
  1116+                            mklnode(ICON, mz-s-o, 0, INT), ty);
<_11111117                 }
 11121118         }
 11131119 }
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-18 21:18 +0100