void task2(intptr_t exinf) { ER_UINT ercd; check_point(22); check_state(false, false, TIPM_ENAALL, false, false, true); check_point(23); ercd = ena_tex(); check_ercd(ercd, E_OK); check_state(false, false, TIPM_ENAALL, false, false, false); ercd = rot_rdq(TPRI_SELF); check_ercd(ercd, E_OK); check_point(30); ercd = ras_tex(TSK_SELF, 0x0002); check_ercd(ercd, E_OK); check_point(34); ercd = ena_dsp(); check_ercd(ercd, E_OK); check_finish(36); check_point(0); }
void task1(intptr_t exinf) { ER_UINT ercd; test_start(__FILE__); check_point(1); check_state(false, false, false, false, false); check_ipm(TIPM_ENAALL); ercd = dis_dsp(); check_ercd(ercd, E_OK); check_point(2); check_state(false, false, true, true, false); check_ipm(TIPM_ENAALL); ercd = sta_alm(ALM1, TEST_TIME_PROC); check_ercd(ercd, E_OK); while(!alm1_flag); check_point(8); check_state(false, false, true, true, false); check_ipm(TIPM_ENAALL); check_finish(9); check_point(0); }
void task1(intptr_t exinf) { ER_UINT ercd; test_start(__FILE__); check_point(1); check_state(false, false, false, false, false); check_ipm(TIPM_ENAALL); ercd = check_chg_ipm(TMIN_INTPRI-1); check_ercd(ercd, E_OK); check_point(2); check_state(false, false, false, true, false); check_ipm(TMIN_INTPRI-1); RAISE_CPU_EXCEPTION; check_point(5); check_state(false, false, false, true, false); check_ipm(TMIN_INTPRI-1); check_finish(6); check_point(0); }
void task1(intptr_t exinf) { ER ercd; test_start(__FILE__); check_point(1); check_state(false, false, TIPM_ENAALL, false, false, true); ercd = dis_dsp(); check_ercd(ercd, E_OK); ercd = ena_tex(); check_ercd(ercd, E_OK); check_point(2); check_state(false, false, TIPM_ENAALL, true, true, false); ercd = sta_alm(ALM1, 1U); check_ercd(ercd, E_OK); while (!(alm1_flag)); check_point(7); check_state(false, false, TIPM_ENAALL, true, true, false); check_finish(8); }
// 再帰呼び出しで総当たりを再現 void put_loop(int depth) { // セルの数の深さになったら抜ける if (depth == DEPTH) return; // 現在の記号取得 const int KIGOU = depth%2 ? BATU : MARU; for (int i=0; i<DEPTH; i++) { // 第一手に関しては中央以降にはコマを置かない if (depth==0 && i>=CENTER) return; if (is_put(i)) { // 置ける put(i, KIGOU); // 置く //print(); // 置けたら常に記号が揃ってるか確認 int flag = check_finish(depth); if (flag) { //print(); dell(i); continue; } // 次の人に処理を移す depth++; put_loop(depth); // 前に置いたのを削除し、forのループにて別の場所に置く dell(i); depth--; } else { // 置けない continue; } } }
void task1(intptr_t exinf) { ER ercd; SIL_PRE_LOC; check_point(1); check_state(false, false, TIPM_ENAALL, false, false, true); ercd = dis_dsp(); check_ercd(ercd, E_OK); ercd = ena_tex(); check_ercd(ercd, E_OK); check_point(2); check_state(false, false, TIPM_ENAALL, true, true, false); SIL_LOC_INT(); RAISE_CPU_EXCEPTION; check_point(5); SIL_UNL_INT(); check_point(6); check_state(false, false, TIPM_ENAALL, true, true, false); check_finish(7); }
void dhash_download::sent_request (ptr<dhash_fetchiter_res> res, clnt_stat err) { assert (!fetch_acked); fetch_acked = true; if (err) { strbuf e; e << "RPC error, status " << err; fail ((str) e); } else if (res && res->status != DHASH_INPROGRESS) { strbuf e; e << "bad status, status " << res->status; fail ((str) e); } else ; // don't call check_finish before gotchunk has finished, unless gotchunk // will never be called. otherwise you'll have issues with // buf_len == bytes_read == 0 if (called_cb || error) { check_finish (); } }
void task1(intptr_t exinf) { ER ercd; switch (++task1_count) { case 1: test_start(__FILE__); check_point(1); check_state(false, false, TIPM_ENAALL, false, false, true); ercd = dis_dsp(); check_ercd(ercd, E_OK); ercd = ena_tex(); check_ercd(ercd, E_OK); check_point(2); check_state(false, false, TIPM_ENAALL, true, true, false); RAISE_CPU_EXCEPTION; check_point(0); break; case 2: check_point(8); check_state(false, false, TIPM_ENAALL, false, false, true); check_finish(9); break; default: check_point(0); break; } }
void task1(intptr_t exinf) { ER ercd; test_start(__FILE__); check_point(1); check_state(false, false, TIPM_ENAALL, false, false, true); ercd = dis_dsp(); check_ercd(ercd, E_OK); ercd = ena_tex(); check_ercd(ercd, E_OK); ercd = loc_cpu(); check_ercd(ercd, E_OK); check_point(2); check_state(false, true, TIPM_ENAALL, true, true, false); RAISE_CPU_EXCEPTION; check_point(5); check_state(false, true, TIPM_ENAALL, true, true, false); check_finish(6); }
void task3(intptr_t exinf) { ER ercd; check_point(4); ercd = ena_tex(); check_ercd(ercd, E_OK); /* * テスト項目(C)のテスト */ tex_start_count = 0U; ercd = ras_tex(TASK3, 0x0001); check_ercd(ercd, E_OK); check_assert(tex_start_count == UTASK_TEX_COUNT); check_point(5); /* * テスト項目(D)のテスト */ tex_start_count = 0U; ercd = ras_tex(TASK3, 0x0002); check_ercd(ercd, E_OK); check_assert(tex_start_count == UTASK_TEX_COUNT); check_finish(6); }
void main_task(intptr_t exinf) { HRTCNT hrtcnt, prev_hrtcnt; char *prev_hrtcnt_pos; ulong_t i; cyclic_count = 0U; recent_hrtcnt = fch_hrt(); syslog(LOG_NOTICE, "system performance time test starts."); for (i = 0; i < NO_LOOP; i++) { (void) loc_cpu(); hrtcnt = fch_hrt(); prev_hrtcnt = recent_hrtcnt; prev_hrtcnt_pos = recent_hrtcnt_pos; recent_hrtcnt = hrtcnt; recent_hrtcnt_pos = "TSK"; (void) unl_cpu(); if (prev_hrtcnt > hrtcnt) { syslog(LOG_NOTICE, "system performance time goes back: %d(%s) %d(TSK)", prev_hrtcnt, prev_hrtcnt_pos, hrtcnt); } } syslog(LOG_NOTICE, "system performance time test finishes."); syslog(LOG_NOTICE, "number of cyclic handler execution: %d", cyclic_count); check_finish(0); }
void task1(intptr_t exinf) { ER ercd; switch (++task1_count) { case 1: check_point(1); check_state(false, false, TIPM_ENAALL, false, false, true); ercd = chg_ipm(TMAX_INTPRI); check_ercd(ercd, E_OK); ercd = ena_tex(); check_ercd(ercd, E_OK); check_point(2); check_state(false, false, TMAX_INTPRI, false, true, false); RAISE_CPU_EXCEPTION; check_point(0); break; case 2: check_point(8); check_state(false, false, TIPM_ENAALL, false, false, true); check_finish(9); break; default: check_point(0); break; } }
void task1(intptr_t exinf) { ER ercd; if (TMAX_INTPRI == TMIN_INTPRI) { syslog_0(LOG_NOTICE, "This test program is not necessary."); ext_ker(); } check_point(1); check_state(false, false, TIPM_ENAALL, false, false, true); ercd = chg_ipm(TMAX_INTPRI); check_ercd(ercd, E_OK); ercd = ena_tex(); check_ercd(ercd, E_OK); check_point(2); check_state(false, false, TMAX_INTPRI, false, true, false); RAISE_CPU_EXCEPTION; check_point(5); check_state(false, false, TMAX_INTPRI, false, true, false); check_finish(6); }
void task1(intptr_t exinf) { ER_UINT ercd; test_start(__FILE__); check_point(1); ercd = act_tsk(TASK2); check_ercd(ercd, E_OK); check_point(6); ercd = chg_pri(TASK3, HIGH_PRIORITY); check_ercd(ercd, E_NOSPT); check_point(7); ercd = wup_tsk(TASK3); check_ercd(ercd, E_NOSPT); check_point(8); ercd = can_wup(TASK3); check_ercd(ercd, E_NOSPT); check_point(9); ercd = rel_wai(TASK3); check_ercd(ercd, E_NOSPT); check_point(10); ercd = sus_tsk(TASK3); check_ercd(ercd, E_NOSPT); check_point(11); ercd = rsm_tsk(TASK3); check_ercd(ercd, E_NOSPT); check_point(12); ercd = sta_alm(ALM1, 10); check_ercd(ercd, E_OK); check_point(13); ercd = slp_tsk(); check_ercd(ercd, E_OK); check_point(27); ercd = act_tsk(TASK3); check_ercd(ercd, E_OK); check_point(28); ercd = act_tsk(TASK4); check_ercd(ercd, E_OK); check_point(29); ercd = act_tsk(TASK2); check_ercd(ercd, E_OK); check_finish(34); check_point(0); }
void task1(intptr_t exinf) { ER ercd; check_point(1); ercd = act_tsk(TASK2); check_ercd(ercd, E_OK); check_point(3); ercd = act_tsk(TASK3); check_ercd(ercd, E_OK); check_point(4); ercd = act_tsk(TASK4); check_ercd(ercd, E_OK); check_point(5); ercd = slp_tsk(); check_ercd(ercd, E_OK); check_point(9); ercd = act_tsk(TASK5); check_ercd(ercd, E_OK); check_point(10); ercd = act_tsk(TASK6); check_ercd(ercd, E_OK); check_point(11); ercd = sus_tsk(TASK6); check_ercd(ercd, E_OK); check_point(12); ercd = sus_tsk(TASK5); check_ercd(ercd, E_OK); check_point(13); ercd = rsm_tsk(TASK5); check_ercd(ercd, E_OK); check_point(14); ercd = rsm_tsk(TASK6); check_ercd(ercd, E_OK); check_point(15); ercd = slp_tsk(); check_ercd(ercd, E_OK); check_point(31); ercd = slp_tsk(); check_ercd(ercd, E_OK); check_finish(38); check_point(0); }
void task1(intptr_t exinf) { ER_UINT ercd; T_RTSK rtsk; T_RMTX rmtx; PRI intpri; test_start(__FILE__); check_point(1); ercd = sta_alm(ALM1, TEST_TIME_CP); check_ercd(ercd, E_OK); ercd = slp_tsk(); check_ercd(ercd, E_OK); check_point(3); ercd = act_tsk(TASK2); check_ercd(ercd, E_OK); check_point(5); ercd = ref_tsk(TASK2, &rtsk); check_ercd(ercd, E_OK); check_assert(rtsk.tskstat == TTS_DMT); ercd = ref_mtx(MTX1, &rmtx); check_ercd(ercd, E_OK); check_assert(rmtx.htskid == TSK_NONE); check_assert(rmtx.wtskid == TSK_NONE); ercd = act_tsk(TASK2); check_ercd(ercd, E_OK); check_point(16); ercd = get_ipm(&intpri); check_ercd(ercd, E_OK); check_assert(intpri == TIPM_ENAALL); ercd = act_tsk(TASK2); check_ercd(ercd, E_OK); check_point(23); check_assert(sns_dsp() == false); ercd = act_tsk(TASK2); check_ercd(ercd, E_OK); check_finish(28); check_point(0); }
void task2(intptr_t exinf) { /* * 初期状態のチェック */ check_point(17); check_state(false, false, TIPM_ENAALL, false, false, true); check_finish(18); }
void task2(intptr_t exinf) { ER_UINT ercd; check_point(42); ercd = loc_mtx(MTX4); check_ercd(ercd, E_OK); check_point(46); ercd = unl_mtx(MTX4); check_ercd(ercd, E_OK); check_point(55); ercd = wup_tsk(TASK4); check_ercd(ercd, E_OK); check_point(57); ercd = wup_tsk(TASK5); check_ercd(ercd, E_OK); check_point(67); ercd = wup_tsk(TASK5); check_ercd(ercd, E_OK); check_point(70); ercd = wup_tsk(TASK3); check_ercd(ercd, E_OK); check_point(72); ercd = wup_tsk(TASK1); check_ercd(ercd, E_OK); check_point(75); ercd = wup_tsk(TASK4); check_ercd(ercd, E_OK); check_point(77); ercd = wup_tsk(TASK5); check_ercd(ercd, E_OK); check_point(104); ercd = ini_mtx(MTX1); check_ercd(ercd, E_OK); check_point(106); ercd = ter_tsk(TASK1); check_ercd(ercd, E_OK); check_finish(107); check_point(0); }
void cpuexc_handler(void *p_excinf) { check_point(3); check_assert(xsns_xpn(p_excinf) == true); check_assert(xsns_dpn(p_excinf) == true); #ifdef CANNOT_RETURN_CPUEXC check_finish(4); #endif /* CANNOT_RETURN_CPUEXC */ check_point(4); }
/* * メインタスク(低優先度) */ void main_task(intptr_t exinf) { syslog_0(LOG_NOTICE, "Performance evaluation program (2)"); perf_eval(0); perf_eval(10); perf_eval(20); perf_eval(30); perf_eval(40); perf_eval(50); perf_eval(100); perf_eval(200); perf_eval(300); check_finish(0); }
void task3(intptr_t exinf) { ER_UINT ercd; ID somid; check_point(3); WAIT(task3_flag); check_point(6); WAIT(task3_flag); check_point(9); WAIT(task3_flag); check_point(11); WAIT(task3_flag); check_point(12); WAIT(task3_flag); check_point(15); ercd = chg_som(TSOM_STP); check_ercd(ercd, E_OK); ercd = get_som(&somid); check_ercd(ercd, E_OK); check_assert(somid == SOM2); check_point(16); WAIT(task3_flag); check_point(21); ercd = chg_som(TSOM_STP); check_ercd(ercd, E_OK); WAIT(task3_flag); check_point(27); ercd = chg_som(TSOM_STP); check_ercd(ercd, E_OK); WAIT(task3_flag); check_finish(32); check_point(0); }
/* * メインタスク(低優先度) */ void main_task(intptr_t exinf) { syslog_0(LOG_NOTICE, "Performance evaluation program (1)"); init_hist(1); init_hist(2); act_tsk(TASK1); act_tsk(TASK2); syslog_0(LOG_NOTICE, "Execution times of wup_tsk -> slp_tsk"); print_hist(1); syslog_0(LOG_NOTICE, "Execution times of slp_tsk -> wup_tsk"); print_hist(2); check_finish(0); }
void dhash_download::gotchunk (str data, int offset, int totsz) { //first chunk if (offset < 0) { fail ("Block not found"); } else { if (buf_len == 0) { buf_len = totsz; buffer = (char *)malloc (buf_len); } add_data (data, offset); } check_finish (); }
/* * We suck in lots of fsck code, and just pick & choose the stuff we want. * * fsreadfd is set up to read from the file system, fswritefd to write to * the file system. */ int main(int argc, char *argv[]) { int ch, rval; char *fsys = NULL; while (-1 != (ch = getopt(argc, argv, "fdr"))) { switch (ch) { case 'f': /* The -f option is left for historical * reasons and has no meaning. */ break; case 'd': check_debug++; break; case 'r': nflag++; /* "no" in fsck, readonly for us */ break; default: usage(); } } argc -= optind; argv += optind; if (argc != 1) usage(); else fsys = argv[0]; check_sblock_init(); if (!check_setup(fsys, 0)) errx(1, "cannot set up file system `%s'", fsys); printf("%s file system `%s'\nLast Mounted on %s\n", nflag? "Examining": "Editing", fsys, check_sblk.b_un.b_fs->fs_fsmnt); rval = cmdloop(); if (!nflag) { check_sblk.b_un.b_fs->fs_clean = 0; /* mark it dirty */ dirty(&check_sblk); check_finish(0); printf("*** FILE SYSTEM MARKED DIRTY\n"); printf("*** BE SURE TO RUN FSCK TO CLEAN UP ANY DAMAGE\n"); printf("*** IF IT WAS MOUNTED, RE-MOUNT WITH -u -o reload\n"); } exit(rval); }
void cpuexc_handler(void *p_excinf) { ER ercd; check_point(4); check_state_i(true, true, true, true, false); check_assert(xsns_xpn(p_excinf) == true); check_assert(xsns_dpn(p_excinf) == true); #ifdef CANNOT_RETURN_CPUEXC check_finish(5); #endif /* CANNOT_RETURN_CPUEXC */ check_point(5); ercd = iunl_cpu(); check_ercd(ercd, E_OK); }
void task1(intptr_t exinf) { ER ercd; check_point(1); check_state(false, false, TIPM_ENAALL, false, false, true); ercd = dis_dsp(); check_ercd(ercd, E_OK); check_point(2); check_state(false, false, TIPM_ENAALL, true, true, true); RAISE_CPU_EXCEPTION; check_point(5); check_state(false, false, TIPM_ENAALL, true, true, true); check_finish(6); }
void task1(intptr_t exinf) { ER ercd; check_point(1); check_state(false, false, TIPM_ENAALL, false, false, true); ercd = chg_ipm(TMIN_INTPRI); check_ercd(ercd, E_OK); check_point(2); check_state(false, false, TMIN_INTPRI, false, true, true); RAISE_CPU_EXCEPTION; check_point(5); check_state(false, false, TMIN_INTPRI, false, true, true); check_finish(6); }
void task1(intptr_t exinf) { ER_UINT ercd; T_ROVR rovr; test_start(__FILE__); check_point(1); ercd = sta_ovr(TSK_SELF, UNIT_TIME); check_ercd(ercd, E_OBJ); ercd = stp_ovr(TSK_SELF); check_ercd(ercd, E_OBJ); ercd = ref_ovr(TSK_SELF, &rovr); check_ercd(ercd, E_OBJ); check_finish(2); check_point(0); }
void task2(intptr_t exinf) { ER ercd; /* * 初期状態のチェック */ check_point(21); check_state(false, false, TIPM_ENAALL, false, false, true); /* * タスク例外処理の許可 */ check_point(22); ercd = ena_tex(); check_ercd(ercd, E_OK); check_state(false, false, TIPM_ENAALL, false, false, false); /* * タスク3に切り換える */ ercd = rot_rdq(TPRI_SELF); /* ここで他のタスクが動作する */ check_ercd(ercd, E_OK); /* * タスク例外処理を要求 */ check_point(29); ercd = ras_tex(TSK_SELF, 0x0002); /* ここでタスク例外処理ルーチンが動作する */ check_ercd(ercd, E_OK); /* * テスト終了 */ check_finish(34); }
void task2(intptr_t exinf) { ER ercd; /* * check init state */ check_point(22); check_state(false, false, TIPM_ENAALL, false, false, true); /* * enable task exception */ check_point(23); ercd = ena_tex(); check_ercd(ercd, E_OK); check_state(false, false, TIPM_ENAALL, false, false, false); /* * switch to task3 */ ercd = rot_rdq(TPRI_SELF); /* other tasks run here */ check_ercd(ercd, E_OK); /* * raise task exception request */ check_point(30); ercd = ras_tex(TSK_SELF, 0x0002); /* task exception routine runs here */ check_ercd(ercd, E_OK); /* * test exits */ check_finish(35); }