OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc2/] [gcc/] [testsuite/] [gcc.c-torture/] [compile/] [930120-1.c] - Diff between revs 297 and 384

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 297 Rev 384
union {
union {
  short I[2];
  short I[2];
  long int L;
  long int L;
  char C[4];
  char C[4];
} itolws;
} itolws;
char *errflg;
char *errflg;
long int dot;
long int dot;
short dotinc;
short dotinc;
long int expvf;
long int expvf;
 
 
char *
char *
f(fcount,ifp,itype,ptype)
f(fcount,ifp,itype,ptype)
     short fcount;
     short fcount;
     char *ifp;
     char *ifp;
{
{
  unsigned w;
  unsigned w;
  long int savdot, wx;
  long int savdot, wx;
  char *fp;
  char *fp;
  char c, modifier, longpr;
  char c, modifier, longpr;
  union {
  union {
    double dval;
    double dval;
    struct {
    struct {
      int i1;
      int i1;
      int i2;
      int i2;
    } ival;
    } ival;
  } dw;
  } dw;
  union {
  union {
    float fval;
    float fval;
    int ival;
    int ival;
  } fw;
  } fw;
  int gotdot = 0;
  int gotdot = 0;
  while (fcount > 0) {
  while (fcount > 0) {
    fp = ifp;
    fp = ifp;
    c = *fp;
    c = *fp;
    longpr = ((c >= 'A') & (c <= 'Z') | (c == 'f') | (c == '4') | (c == 'p') | (c == 'i'));
    longpr = ((c >= 'A') & (c <= 'Z') | (c == 'f') | (c == '4') | (c == 'p') | (c == 'i'));
    if ((itype == 0) || (*fp == 'a')) {
    if ((itype == 0) || (*fp == 'a')) {
      wx = dot;
      wx = dot;
      w = dot;
      w = dot;
    } else {
    } else {
      gotdot = 1;
      gotdot = 1;
      wx = get((int)dot, itype);
      wx = get((int)dot, itype);
      if (!longpr) {
      if (!longpr) {
        w = (itolws.L=(wx), itolws.I[((dot)&3)>>1]);
        w = (itolws.L=(wx), itolws.I[((dot)&3)>>1]);
      }
      }
    }
    }
    if (c == 'F') {
    if (c == 'F') {
      dw.ival.i1 = wx;
      dw.ival.i1 = wx;
      if (itype == 0) {
      if (itype == 0) {
        dw.ival.i2 = expvf;
        dw.ival.i2 = expvf;
      }
      }
    }
    }
 
 
    modifier = *fp++;
    modifier = *fp++;
    switch(modifier) {
    switch(modifier) {
    case ' ' :
    case ' ' :
    case '\t' :
    case '\t' :
      break;
      break;
    case 't':
    case 't':
    case 'T':
    case 'T':
      printf("%T",fcount);
      printf("%T",fcount);
      return(fp);
      return(fp);
    case 'r':
    case 'r':
    case 'R':
    case 'R':
      printf("%M",fcount);
      printf("%M",fcount);
      return(fp);
      return(fp);
    case 'k':
    case 'k':
      printf("%k",w);
      printf("%k",w);
      break;
      break;
    case 'K':
    case 'K':
      printf("%K",wx);
      printf("%K",wx);
      break;
      break;
    case 'a':
    case 'a':
      psymoff(dot,ptype,":%16t");
      psymoff(dot,ptype,":%16t");
      dotinc = 0;
      dotinc = 0;
      break;
      break;
    case 'p':
    case 'p':
      psymoff(0,ptype,"%16t");
      psymoff(0,ptype,"%16t");
      break;
      break;
    case 'u':
    case 'u':
      printf("%-8u",w);
      printf("%-8u",w);
      break;
      break;
    case 'U':
    case 'U':
      printf("%-16U",wx); break;
      printf("%-16U",wx); break;
    case 'c':
    case 'c':
    case 'C':
    case 'C':
      if (modifier == 'C') {
      if (modifier == 'C') {
        printesc((int)(itolws.L=(wx), itolws.C[(dot)&3]));
        printesc((int)(itolws.L=(wx), itolws.C[(dot)&3]));
      } else {
      } else {
        printc((char)(itolws.L=(wx), itolws.C[(dot)&3]));
        printc((char)(itolws.L=(wx), itolws.C[(dot)&3]));
      }
      }
      dotinc = 1;
      dotinc = 1;
      break;
      break;
    case 'b':
    case 'b':
      printf("%-8x", (itolws.L=(wx), itolws.C[(dot)&3]));
      printf("%-8x", (itolws.L=(wx), itolws.C[(dot)&3]));
      dotinc = 1;
      dotinc = 1;
      break;
      break;
    case 'B':
    case 'B':
      printf("%-8o", (itolws.L=(wx), itolws.C[(dot)&3]));
      printf("%-8o", (itolws.L=(wx), itolws.C[(dot)&3]));
      dotinc = 1;
      dotinc = 1;
      break;
      break;
    case 's':
    case 's':
    case 'S':
    case 'S':
      savdot = dot;
      savdot = dot;
      dotinc = 1;
      dotinc = 1;
      while ((c = (itolws.L=(wx), itolws.C[(dot)&3])) && (errflg == 0)) {
      while ((c = (itolws.L=(wx), itolws.C[(dot)&3])) && (errflg == 0)) {
        dot = inkdot(1);
        dot = inkdot(1);
        if (modifier == 'S') {
        if (modifier == 'S') {
          printesc(c);
          printesc(c);
        } else {
        } else {
          printc(c);
          printc(c);
        }
        }
        endline();
        endline();
        if (!(dot & 3))
        if (!(dot & 3))
          wx = get((int)dot, itype);
          wx = get((int)dot, itype);
      }
      }
      dotinc = dot - savdot + 1;
      dotinc = dot - savdot + 1;
      dot = savdot;
      dot = savdot;
      break;
      break;
    case 'i':
    case 'i':
      if (gotdot) {
      if (gotdot) {
        wx = get((int)(dot & ~3), itype);
        wx = get((int)(dot & ~3), itype);
      }
      }
      iDasm((int)(wx), (unsigned int)0, (unsigned int)(dot&~3));
      iDasm((int)(wx), (unsigned int)0, (unsigned int)(dot&~3));
      printc('\n');
      printc('\n');
      break;
      break;
    case 'f':
    case 'f':
      fw.ival = wx;
      fw.ival = wx;
      printf("%-16.9f", fw.fval);
      printf("%-16.9f", fw.fval);
      dotinc = 4;
      dotinc = 4;
      break;
      break;
    case 'F':
    case 'F':
      printf("%-32.18F", dw.dval);
      printf("%-32.18F", dw.dval);
      dotinc = 8;
      dotinc = 8;
      break;
      break;
    }
    }
  }
  }
  return(fp);
  return(fp);
}
}
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.