add counters to MCU version
This commit is contained in:
+12
-107
@@ -16,115 +16,20 @@
|
|||||||
#include "globals.h"
|
#include "globals.h"
|
||||||
|
|
||||||
static const char* generated_source = ""
|
static const char* generated_source = ""
|
||||||
"var tmp, a, b = 1, c = 2, d, e = 3, g = 4;\n"
|
"var count = 10000;\n"
|
||||||
|
"var x = 7;\n"
|
||||||
|
"var y = 3;\n"
|
||||||
"\n"
|
"\n"
|
||||||
"var count = 1000;\n"
|
"var tmp1;\n"
|
||||||
|
"var tmp2;\n"
|
||||||
|
"var tmp3;\n"
|
||||||
|
"var tmp4;\n"
|
||||||
"\n"
|
"\n"
|
||||||
"tmp = b * c;\n"
|
"for (var i = 0; i < count; i++)\n"
|
||||||
"a = tmp + g;\n"
|
|
||||||
"d = tmp * e + a;\n"
|
|
||||||
"\n"
|
|
||||||
"var waitTime = 50;\n"
|
|
||||||
"var numOfIterations = 10;\n"
|
|
||||||
"\n"
|
|
||||||
"while (1)\n"
|
|
||||||
"{\n"
|
"{\n"
|
||||||
"for (var j = 0; j < numOfIterations; j += 1)\n"
|
"tmp1 = x * x;\n"
|
||||||
"{\n"
|
"tmp2 = y * y;\n"
|
||||||
"LEDOn(12);\n"
|
"tmp3 = tmp1 * tmp1;\n"
|
||||||
"LEDOn(13);\n"
|
"tmp4 = tmp2 * tmp2;\n"
|
||||||
"LEDOn(14);\n"
|
|
||||||
"LEDOn(15);\n"
|
|
||||||
"wait(waitTime * 2);\n"
|
|
||||||
"LEDOff(12);\n"
|
|
||||||
"LEDOff(13);\n"
|
|
||||||
"LEDOff(14);\n"
|
|
||||||
"LEDOff(15);\n"
|
|
||||||
"wait(waitTime * 2);\n"
|
|
||||||
"}\n"
|
|
||||||
"\n"
|
|
||||||
"for (var j = 0; j < numOfIterations; j += 1)\n"
|
|
||||||
"{\n"
|
|
||||||
"LEDOn(12);\n"
|
|
||||||
"wait(waitTime);\n"
|
|
||||||
"LEDOff(12);\n"
|
|
||||||
"wait(waitTime);\n"
|
|
||||||
"LEDOn(13);\n"
|
|
||||||
"wait(waitTime);\n"
|
|
||||||
"LEDOff(13);\n"
|
|
||||||
"wait(waitTime);\n"
|
|
||||||
"LEDOn(14);\n"
|
|
||||||
"wait(waitTime);\n"
|
|
||||||
"LEDOff(14);\n"
|
|
||||||
"wait(waitTime);\n"
|
|
||||||
"LEDOn(15);\n"
|
|
||||||
"wait(waitTime);\n"
|
|
||||||
"LEDOff(15);\n"
|
|
||||||
"wait(waitTime);\n"
|
|
||||||
"}\n"
|
|
||||||
"\n"
|
|
||||||
"for (var j = 0; j < numOfIterations; j += 1)\n"
|
|
||||||
"{\n"
|
|
||||||
"LEDOn(12);\n"
|
|
||||||
"wait(waitTime);\n"
|
|
||||||
"LEDOff(12);\n"
|
|
||||||
"LEDOn(13);\n"
|
|
||||||
"wait(waitTime);\n"
|
|
||||||
"LEDOff(13);\n"
|
|
||||||
"LEDOn(14);\n"
|
|
||||||
"wait(waitTime);\n"
|
|
||||||
"LEDOff(14);\n"
|
|
||||||
"LEDOn(15);\n"
|
|
||||||
"wait(waitTime);\n"
|
|
||||||
"LEDOff(15);\n"
|
|
||||||
"}\n"
|
|
||||||
"\n"
|
|
||||||
"for (var j = 0; j < numOfIterations; j += 1)\n"
|
|
||||||
"{\n"
|
|
||||||
"LEDOn(12);\n"
|
|
||||||
"wait(waitTime / 2);\n"
|
|
||||||
"LEDOff(12);\n"
|
|
||||||
"LEDOn(13);\n"
|
|
||||||
"wait(waitTime / 2);\n"
|
|
||||||
"LEDOff(13);\n"
|
|
||||||
"LEDOn(14);\n"
|
|
||||||
"wait(waitTime / 2);\n"
|
|
||||||
"LEDOff(14);\n"
|
|
||||||
"LEDOn(15);\n"
|
|
||||||
"wait(waitTime / 2);\n"
|
|
||||||
"LEDOff(15);\n"
|
|
||||||
"}\n"
|
|
||||||
"\n"
|
|
||||||
"for (var j = 0; j < numOfIterations; j += 1)\n"
|
|
||||||
"{\n"
|
|
||||||
"LEDOn(12);\n"
|
|
||||||
"wait(waitTime / 3);\n"
|
|
||||||
"LEDOff(12);\n"
|
|
||||||
"LEDOn(13);\n"
|
|
||||||
"wait(waitTime / 3);\n"
|
|
||||||
"LEDOff(13);\n"
|
|
||||||
"LEDOn(14);\n"
|
|
||||||
"wait(waitTime / 3);\n"
|
|
||||||
"LEDOff(14);\n"
|
|
||||||
"LEDOn(15);\n"
|
|
||||||
"wait(waitTime / 3);\n"
|
|
||||||
"LEDOff(15);\n"
|
|
||||||
"}\n"
|
|
||||||
"\n"
|
|
||||||
"for (var j = 0; j < numOfIterations; j += 1)\n"
|
|
||||||
"{\n"
|
|
||||||
"LEDOn(12);\n"
|
|
||||||
"wait(waitTime / 6);\n"
|
|
||||||
"LEDOff(12);\n"
|
|
||||||
"LEDOn(13);\n"
|
|
||||||
"wait(waitTime / 6);\n"
|
|
||||||
"LEDOff(13);\n"
|
|
||||||
"LEDOn(14);\n"
|
|
||||||
"wait(waitTime / 6);\n"
|
|
||||||
"LEDOff(14);\n"
|
|
||||||
"LEDOn(15);\n"
|
|
||||||
"wait(waitTime / 6);\n"
|
|
||||||
"LEDOff(15);\n"
|
|
||||||
"}\n"
|
|
||||||
"}\n"
|
"}\n"
|
||||||
;
|
;
|
||||||
|
|||||||
+28
-11
@@ -85,7 +85,6 @@ jerry_run (const char *script_source, size_t script_source_size, bool is_parse_o
|
|||||||
}
|
}
|
||||||
|
|
||||||
init_int (opcodes);
|
init_int (opcodes);
|
||||||
run_int ();
|
|
||||||
} /* jerry_run */
|
} /* jerry_run */
|
||||||
|
|
||||||
#ifdef __HOST
|
#ifdef __HOST
|
||||||
@@ -185,17 +184,35 @@ main (int argc __unused,
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __TARGET_MCU
|
#ifdef __TARGET_MCU
|
||||||
int
|
static uint32_t start;
|
||||||
main(void)
|
static uint32_t finish_native_ms;
|
||||||
{
|
static uint32_t finish_parse_ms;
|
||||||
initialize_sys_tick();
|
static uint32_t finish_int_ms;
|
||||||
initialize_leds();
|
|
||||||
initialize_timer();
|
|
||||||
|
|
||||||
const char *source_p = generated_source;
|
|
||||||
const size_t source_size = sizeof(generated_source);
|
|
||||||
|
|
||||||
jerry_run( source_p,
|
int
|
||||||
|
main (void)
|
||||||
|
{
|
||||||
|
initialize_sys_tick ();
|
||||||
|
initialize_leds ();
|
||||||
|
initialize_timer ();
|
||||||
|
|
||||||
|
led_on (13);
|
||||||
|
|
||||||
|
const char *source_p = generated_source;
|
||||||
|
const size_t source_size = sizeof (generated_source);
|
||||||
|
|
||||||
|
set_sys_tick_counter ((uint32_t) - 1);
|
||||||
|
start = get_sys_tick_counter ();
|
||||||
|
jerry_run (source_p,
|
||||||
source_size, false);
|
source_size, false);
|
||||||
|
finish_parse_ms = (start - get_sys_tick_counter ()) / 1000;
|
||||||
|
led_on (14);
|
||||||
|
|
||||||
|
set_sys_tick_counter ((uint32_t) - 1);
|
||||||
|
start = get_sys_tick_counter ();
|
||||||
|
run_int ();
|
||||||
|
finish_int_ms = (start - get_sys_tick_counter ()) / 1000;
|
||||||
|
|
||||||
|
led_on (15);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user