示例#1
0
文件: test6.c 项目: 8l/soc
void bootentry()
{
  _mem_init();

  parsefun *f = mksequence(mkparsechar('A'),
                           mksequence(mkparsechar('B'),
                                      mkparsechar('C')));

  parsefun *g = mksequence(mkparsechar('D'),
                           mksequence(mkparsechar('E'),
                                      mkparsechar('F')));

  parsefun *z = mkplus(mkchoice(mkparsechar('G'),
                                mkparsechar('H')));

  pcontext *ctx = (pcontext *)malloc(sizeof(pcontext));
  ctx -> str = "ABCDEFGHHGGHGHGHGGG000";
  ctx -> eof = 0;
  ctx -> pos = 0;
  ctx -> len = strlen(ctx->str);

  int v = runparser(ctx, f);
  _printnum("V=", v);
  _printnum("POS=", ctx->pos);
  v = runparser(ctx, f);
  _printnum("V1=", v);
  _printnum("POS1=", ctx->pos);
  v = runparser(ctx, g);
  _printnum("V2=", v);
  _printnum("POS2=", ctx->pos);
  v = runparser(ctx, z);
  _printnum("V3=", v);
  _printnum("POS3=", ctx->pos);
  _testhalt();
}
示例#2
0
void bootentry()
{
  _printtst("5!=", fac(5));
  _printtst("7!=", fac(7));
  _printtst("fib(8)=", fib(8));
  _printtst("fib(A)=", fib(0xA));
  _testhalt();
}
示例#3
0
文件: test7.c 项目: 8l/soc
void bootentry()
{
  int i;
  tst[0] = 1;
  tst[1] = 3;
  tst[2] = 4;
  for(i=0;i<3;i++) {
    _printnum("N=", tstswitch(tst[i]));
  }
  _testhalt();
}
示例#4
0
void bootentry()
{
  // Make sure it's not constant folded
        for (int32 i = 0; i < 64; i++) {
                int32 tmp;
                HWMEMTEST(1, i, i, &tmp);
        }
        
        int32 c0 = _perfcounter();
        int32 i0 = _perfcounter1();
        int32 res1;
        HWMEMTEST(0, 0, 0, &res1);
        int32 c1 = _perfcounter();
        int32 i1 = _perfcounter1();

        _printtst("result1=", res1);
        _printtst(">>  Cycles: ", c1-c0);
        _printtst(">>  Insns: ", i1-i0);
        _testhalt();
}
示例#5
0
void bootentry()
{
  _print("HELLO, WORLD!\n");
   _testhalt();
}