git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@492 35acf78f-673a-0410-8e92-d51de3d6d3f4
parent
bdba36fefc
commit
aac96ddde3
|
@ -73,6 +73,9 @@ Win32-MinGW - ChibiOS/RT simulator and demo into a WIN32 process,
|
|||
*** Releases ***
|
||||
*****************************************************************************
|
||||
|
||||
*** 0.7.4 ***
|
||||
- Added a new benchmark to the test suite (timers set/reset performance).
|
||||
|
||||
*** 0.7.3 ***
|
||||
- FIX: Fixed a bug in chThdSleepUntil(), this API is no more a macro now.
|
||||
- NEW: New chThdSleepSeconds(), chThdSleepMilliseconds() and
|
||||
|
|
|
@ -62,6 +62,7 @@ static const struct testcase *tests[] = {
|
|||
&testbmk5,
|
||||
&testbmk6,
|
||||
&testbmk7,
|
||||
&testbmk8,
|
||||
NULL
|
||||
};
|
||||
|
||||
|
|
|
@ -292,3 +292,40 @@ const struct testcase testbmk7 = {
|
|||
empty,
|
||||
bmk7_execute
|
||||
};
|
||||
|
||||
static char *bmk8_gettest(void) {
|
||||
|
||||
return "Benchmark, virtual timers set/reset";
|
||||
}
|
||||
|
||||
static void tmo(void *param) {}
|
||||
|
||||
static void bmk8_execute(void) {
|
||||
static VirtualTimer vt1, vt2;
|
||||
uint32_t n = 0;
|
||||
|
||||
test_wait_tick();
|
||||
test_start_timer(1000);
|
||||
do {
|
||||
chSysLock();
|
||||
chVTSetI(&vt1, 1, tmo, NULL);
|
||||
chVTSetI(&vt2, 10000, tmo, NULL);
|
||||
chVTResetI(&vt1);
|
||||
chVTResetI(&vt2);
|
||||
chSysUnlock();
|
||||
n++;
|
||||
#if defined(WIN32)
|
||||
ChkIntSources();
|
||||
#endif
|
||||
} while (!test_timer_done);
|
||||
test_print("--- Score : ");
|
||||
test_printn(n * 2);
|
||||
test_println(" timers/S");
|
||||
}
|
||||
|
||||
const struct testcase testbmk8 = {
|
||||
bmk8_gettest,
|
||||
empty,
|
||||
empty,
|
||||
bmk8_execute
|
||||
};
|
||||
|
|
|
@ -22,6 +22,6 @@
|
|||
|
||||
extern const struct testcase testbmk1, testbmk2, testbmk3,
|
||||
testbmk4, testbmk5, testbmk6,
|
||||
testbmk7;
|
||||
testbmk7, testbmk8;
|
||||
|
||||
#endif /* _TESTBMK_H_ */
|
||||
|
|
Loading…
Reference in New Issue