コード例 #1
0
void
alarm1_handler(intptr_t exinf)
{
	SIL_PRE_LOC;

	check_point(3);
	check_state_i(true, false, true, true, false);
	SIL_LOC_INT();
	RAISE_CPU_EXCEPTION;

	check_point(6);
	SIL_UNL_INT();

	check_point(7);
	check_state_i(true, false, true, true, false);
	alm1_flag = true;
}
コード例 #2
0
void
task2(intptr_t exinf)
{
	ER_UINT	ercd;

	check_point(4);
	ercd = ploc_mtx(MTX1);
	check_ercd(ercd, E_TMOUT);

	ercd = loc_mtx(MTX1);
	check_ercd(ercd, E_OK);

	check_point(10);
	ercd = unl_mtx(MTX1);
	check_ercd(ercd, E_OK);

	check_point(12);
	ercd = loc_mtx(MTX1);
	check_ercd(ercd, E_OK);

	check_point(13);
	ercd = slp_tsk();
	check_ercd(ercd, E_OK);

	check_point(16);
	ercd = unl_mtx(MTX1);
	check_ercd(ercd, E_OK);

	check_point(17);
	ercd = ext_tsk();

	check_point(0);
}
コード例 #3
0
void
task3(intptr_t exinf)
{
	ER_UINT	ercd;

	switch (++task3_count) {
	case 1:
		check_point(22);
		ercd = act_tsk(TASK2);
		check_ercd(ercd, E_OK);

		check_point(25);
		ercd = ext_tsk();
		check_ercd(ercd, E_OK);

		check_point(0);

	case 2:
		check_point(32);
		ercd = ext_tsk();
		check_ercd(ercd, E_OK);

		check_point(0);

	default:
		check_point(0);
	}
	check_point(0);
}
コード例 #4
0
void
task3(intptr_t exinf)
{
	ER_UINT	ercd;

	check_point(6);
	ercd = unl_mtx(MTX1);
	check_ercd(ercd, E_OBJ);

	check_point(7);
	ercd = loc_mtx(MTX1);
	check_ercd(ercd, E_OK);

	check_point(11);
	ercd = ext_tsk();

	check_point(0);
}
コード例 #5
0
ファイル: test_cpuexc10.c プロジェクト: huchunxu/asp
void
cpuexc_handler(void *p_excinf)
{
	ER		ercd;

	check_point(3);
	check_state_i(true, false, false, true, false);
	if (xsns_xpn(p_excinf) == true) {
		syslog_0(LOG_WARNING, "xsns_xpn returns true.");
	}
	check_assert(xsns_dpn(p_excinf) == true);

	check_point(4);
	ercd = iras_tex(TASK1, 1U);
	check_ercd(ercd, E_OK);
	ercd = iloc_cpu();
	check_ercd(ercd, E_OK);
}
コード例 #6
0
void
cpuexc_handler(void *p_excinf)
{
	ER_UINT	ercd;

	check_point(3);
	check_state(true, false, false, true, false);

	check_assert(xsns_dpn(p_excinf) == true);

	HOOK_POINT(4);
	ercd = loc_cpu();
	check_ercd(ercd, E_OK);

	return;

	check_point(0);
}
コード例 #7
0
ファイル: test_cpuexc2.c プロジェクト: zaurus04/cortexm3
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);
}
コード例 #8
0
ファイル: test_flg1.c プロジェクト: takeharukato/asp3-aarch64
void
alarm1_handler(intptr_t exinf)
{
	ER_UINT	ercd;
	FLGPTN	flgptn;

	check_point(40);
	ercd = wai_flg(FLG1, 0x01, TWF_ORW, &flgptn);
	check_ercd(ercd, E_CTX);

	ercd = set_flg(FLG3, 0x01);
	check_ercd(ercd, E_OK);

	check_point(41);
	return;

	check_point(0);
}
コード例 #9
0
void
tex_task1(TEXPTN texptn, intptr_t exinf)
{
	ER		ercd;

	check_point(5);
	check_state(false, false, TIPM_ENAALL, true, true, true);

	check_point(6);
	ercd = act_tsk(TASK1);
	check_ercd(ercd, E_OK);

	check_point(7);
	ercd = ext_tsk();
	check_ercd(ercd, E_OK);

	check_point(0);
}
コード例 #10
0
ファイル: test_mutex3.c プロジェクト: blarryt/toppers-asp
void
task3(intptr_t exinf)
{
	ER		ercd;

	check_point(8);
	ercd = unl_mtx(MTX1);
	check_ercd(ercd, E_ILUSE);

	check_point(9);
	ercd = loc_mtx(MTX1);
	check_ercd(ercd, E_OK);

	check_point(12);
	ercd = ext_tsk();

	check_point(0);
}
コード例 #11
0
ファイル: test_cpuexc12.c プロジェクト: huchunxu/asp
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);
}
コード例 #12
0
void
task4(intptr_t exinf)
{
	ER		ercd;
	PRI		tskpri;

	check_point(26);
	ercd = loc_mtx(MTX2);
	check_ercd(ercd, E_OK);

	check_point(31);
	ercd = get_pri(TPRI_SELF, &tskpri);
	check_ercd(ercd, E_OK);
	check_assert(tskpri == HIGH_PRIORITY);

	ercd = ext_tsk();

	check_point(0);
}
コード例 #13
0
void
task5(intptr_t exinf)
{
	ER		ercd;

	check_point(16);
	ercd = slp_tsk();
	check_ercd(ercd, E_OK);

	check_point(33);
	ercd = sta_alm(ALM1, 10);
	check_ercd(ercd, E_OK);

	check_point(34);
	ercd = slp_tsk();
	check_ercd(ercd, E_OK);

	check_point(0);
}
コード例 #14
0
void
task4(intptr_t exinf)
{
	ER		ercd;

	check_point(7);
	ercd = wup_tsk(TASK1);
	check_ercd(ercd, E_OK);

	check_point(8);
	ercd = slp_tsk();
	check_ercd(ercd, E_OK);

	check_point(26);
	ercd = slp_tsk();
	check_ercd(ercd, E_OK);

	check_point(0);
}
コード例 #15
0
void
task1(intptr_t exinf)
{
	ER_UINT	ercd;

	test_start(__FILE__);

	check_point(1);
	ercd = act_tsk(TASK2);
	check_ercd(ercd, E_OK);

	ercd = act_tsk(TASK4);
	check_ercd(ercd, E_OK);

	ercd = slp_tsk();
	check_ercd(ercd, E_OK);

	check_point(4);
	ercd = snd_mbf(MBF1, string2, 25);
	check_ercd(ercd, E_OK);

	check_point(6);
	check_assert(strncmp(buf1, string2, 25) == 0);

	ercd = act_tsk(TASK3);
	check_ercd(ercd, E_OK);

	ercd = slp_tsk();
	check_ercd(ercd, E_OK);

	check_point(13);
	ercd = snd_mbf(MBF1, string2, 10);
	check_ercd(ercd, E_OK);

	ercd = rcv_mbf(MBF1, buf1);
	check_ercd(ercd, 10);

	check_assert(strncmp(buf1, string2, 10) == 0);

	ercd = slp_tsk();
	check_ercd(ercd, E_OK);

	check_point(24);
	ercd = chg_pri(TASK3, LOW_PRIORITY);
	check_ercd(ercd, E_OK);

	ercd = slp_tsk();
	check_ercd(ercd, E_OK);

	check_point(34);
	ercd = chg_pri(TASK2, HIGH_PRIORITY);
	check_ercd(ercd, E_OK);

	ercd = slp_tsk();
	check_ercd(ercd, E_OK);

	check_point(0);
}
コード例 #16
0
ファイル: test_cpuexc13.c プロジェクト: huchunxu/asp
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);
}
コード例 #17
0
ファイル: test_tprot3.c プロジェクト: ev3rt-git/ev3rt-hrp3
void
task2(intptr_t exinf)
{
	ER_UINT	ercd;
	ID		somid;

	test_start(__FILE__);

	check_point(1);
	ercd = get_som(&somid);
	check_ercd(ercd, E_OK);

	check_assert(somid == SOM1);

	WAIT(task2_flag);

	check_point(4);
	ercd = chg_som(SOM2);
	check_ercd(ercd, E_OK);

	ercd = get_som(&somid);
	check_ercd(ercd, E_OK);

	check_assert(somid == SOM1);

	WAIT(task2_flag);

	check_point(8);
	WAIT(task2_flag);

	check_point(14);
	WAIT(task2_flag);

	check_point(19);
	ercd = sta_cyc(CYC1);
	check_ercd(ercd, E_OK);

	ercd = get_som(&somid);
	check_ercd(ercd, E_OK);

	check_assert(somid == SOM1);

	WAIT(task2_flag);

	check_point(25);
	WAIT(task2_flag);

	check_point(30);
	WAIT(task2_flag);

	check_point(0);
}
コード例 #18
0
ファイル: test_tprot3.c プロジェクト: ev3rt-git/ev3rt-hrp3
void
task1(intptr_t exinf)
{
	ER_UINT	ercd;
	ID		somid;

	check_point(2);
	WAIT(task1_flag);

	check_point(5);
	WAIT(task1_flag);

	check_point(7);
	ercd = get_som(&somid);
	check_ercd(ercd, E_OK);

	check_assert(somid == SOM2);

	WAIT(task1_flag);

	check_point(10);
	ercd = get_som(&somid);
	check_ercd(ercd, E_OK);

	check_assert(somid == SOM3);

	WAIT(task1_flag);

	check_point(13);
	ercd = get_som(&somid);
	check_ercd(ercd, E_OK);

	check_assert(somid == SOM2);

	WAIT(task1_flag);

	check_point(20);
	WAIT(task1_flag);

	check_point(26);
	WAIT(task1_flag);

	check_point(31);
	WAIT(task1_flag);

	check_point(0);
}
コード例 #19
0
ファイル: test_sysman1.c プロジェクト: ev3rt-git/ev3rt-hrp3
void
task2(intptr_t exinf)
{
	ID		tskid;
	ER_UINT	ercd;
	uint_t	load;

	check_point(7);
	ercd = get_lod(TPRI_SELF, &load);
	check_ercd(ercd, E_OK);

	check_assert(load == 3U);

	ercd = get_nth(TPRI_SELF, 0U, &tskid);
	check_ercd(ercd, E_OK);

	check_assert(tskid == TASK2);

	check_point(8);
	ercd = slp_tsk();
	check_ercd(ercd, E_OK);

	check_point(17);
	ercd = get_lod(TPRI_SELF, &load);
	check_ercd(ercd, E_OK);

	check_assert(load == 1U);

	check_point(18);
	ercd = chg_pri(TASK5, MID_PRIORITY);
	check_ercd(ercd, E_OK);

	ercd = get_lod(TPRI_SELF, &load);
	check_ercd(ercd, E_OK);

	check_assert(load == 2U);

	ercd = rot_rdq(TPRI_SELF);
	check_ercd(ercd, E_OK);

	check_point(0);
}
コード例 #20
0
ファイル: test_tex8.c プロジェクト: yuyaotsuka/etrobo
void
task4(intptr_t exinf)
{
	ER		ercd;

	ercd = ras_tex(TASK3, 0x0002);
	check_ercd(ercd, E_OK);
	
	ercd = ext_tsk();
	check_point(0);
}
コード例 #21
0
ファイル: test_sysstat1.c プロジェクト: PizzaFactory/hrp2ev3
void
task2(intptr_t exinf)
{
	/*
	 *  初期状態のチェック
	 */
	check_point(17);
	check_state(false, false, TIPM_ENAALL, false, false, true);

	check_finish(18);
}
コード例 #22
0
void
alarm1_handler(intptr_t exinf)
{
	ER		ercd;
	ID		tskid;

	check_point(35);
	ercd = iget_tid(&tskid);
	check_ercd(ercd, E_OK);
	check_assert(tskid == TSK_NONE);

	check_point(36);
	ercd = iwup_tsk(TASK1);
	check_ercd(ercd, E_OK);

	check_point(37);
	return;

	check_point(0);
}
コード例 #23
0
ファイル: Sphere.hpp プロジェクト: MrBr3/Space-Deminer
inline Overlap Plane::check_sphere(const Sphere& sphere, gfloat epsilon)const
{
  Vector3 sphere_pos  = sphere.get_position();

  Overlap o = check_point(sphere_pos, sphere.radius+epsilon);

  if(o==INSIDE)
    return OVERLAPPING;

  return o;
}
コード例 #24
0
ファイル: test_sem2.c プロジェクト: blarryt/toppers-asp
void
task2(intptr_t exinf)
{
	ER		ercd;

	check_point(24);
	ercd = tslp_tsk(10);
	check_ercd(ercd, E_TMOUT);

	check_point(27);
	ercd = sta_alm(ALM1, 10);
	check_ercd(ercd, E_OK);

	wait_var();

	check_point(29);
	ercd = ext_tsk();

	check_point(0);
}
コード例 #25
0
ファイル: check.c プロジェクト: bloodead/printfcall
va_list	search_func_type_spe(va_list a_list, t_list* begin, const char* format, int* pt_count)
{
	if (begin->value[0] == '0')
	{
		check_zero(format,pt_count, a_list);
		id_print_nbr(va_arg(a_list, int));
	}
	else if (begin->value[0] == '.')
		a_list = check_point(format, a_list, pt_count);
	return a_list;
}
コード例 #26
0
ファイル: test_tex8.c プロジェクト: yuyaotsuka/etrobo
void
task1(intptr_t exinf)
{
	ER		ercd;

	test_start(__FILE__);

	check_point(1);

	ercd = ena_tex();
	check_ercd(ercd, E_OK);

	/*
	 *  テスト項目(A)のテスト
	 */
	tex_start_count = 0U;
	ercd = ras_tex(TASK1, 0x0001);
	check_ercd(ercd, E_OK);
	check_assert(tex_start_count == STASK_TEX_COUNT);

	check_point(2);

	/*
	 *  テスト項目(B)のテスト
	 */
	tex_start_count = 0U;
	ercd = ras_tex(TASK1, 0x0002);
	check_ercd(ercd, E_OK);
	check_assert(tex_start_count == STASK_TEX_COUNT);

	check_point(3);

	/*
	 *  この後のテストはTASK3で実施
	 */
	ercd = act_tsk(TASK3);
	check_ercd(ercd, E_OK);

	ercd = ext_tsk();
	check_point(0);
}
コード例 #27
0
ファイル: test_ovrhdr4.c プロジェクト: ev3rt-git/ev3rt-hrp3
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);
}
コード例 #28
0
void
task4(intptr_t exinf)
{
	ER_UINT	ercd;

	switch (++task4_count) {
	case 1:
		check_point(26);
		ercd = ext_tsk();
		check_ercd(ercd, E_OK);

		check_point(0);

	case 2:
		check_point(33);
		ercd = ext_tsk();
		check_ercd(ercd, E_OK);

		check_point(0);

	default:
		check_point(0);
	}
	check_point(0);
}
コード例 #29
0
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);
}
コード例 #30
0
void
task2(intptr_t exinf)
{
	ER		ercd;

	check_point(5);
	check_state(false, false, TIPM_ENAALL, false, false, true);

	check_point(6);
	ercd = ter_tsk(TASK1);
	check_ercd(ercd, E_OK);

	check_point(7);
	ercd = act_tsk(TASK1);
	check_ercd(ercd, E_OK);

	check_point(8);
	ercd = ext_tsk();
	check_ercd(ercd, E_OK);

	check_point(0);
}