diff --git a/src/generated.h b/src/generated.h index d6fb5b4b4..111a64bf9 100644 --- a/src/generated.h +++ b/src/generated.h @@ -16,115 +16,20 @@ #include "globals.h" 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" -"var count = 1000;\n" +"var tmp1;\n" +"var tmp2;\n" +"var tmp3;\n" +"var tmp4;\n" "\n" -"tmp = b * c;\n" -"a = tmp + g;\n" -"d = tmp * e + a;\n" -"\n" -"var waitTime = 50;\n" -"var numOfIterations = 10;\n" -"\n" -"while (1)\n" +"for (var i = 0; i < count; i++)\n" "{\n" -"for (var j = 0; j < numOfIterations; j += 1)\n" -"{\n" -"LEDOn(12);\n" -"LEDOn(13);\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" +"tmp1 = x * x;\n" +"tmp2 = y * y;\n" +"tmp3 = tmp1 * tmp1;\n" +"tmp4 = tmp2 * tmp2;\n" "}\n" ; diff --git a/src/main.c b/src/main.c index 78d87ef17..ad96524d5 100644 --- a/src/main.c +++ b/src/main.c @@ -85,7 +85,6 @@ jerry_run (const char *script_source, size_t script_source_size, bool is_parse_o } init_int (opcodes); - run_int (); } /* jerry_run */ #ifdef __HOST @@ -185,17 +184,35 @@ main (int argc __unused, #endif #ifdef __TARGET_MCU -int -main(void) -{ - initialize_sys_tick(); - initialize_leds(); - initialize_timer(); - - const char *source_p = generated_source; - const size_t source_size = sizeof(generated_source); +static uint32_t start; +static uint32_t finish_native_ms; +static uint32_t finish_parse_ms; +static uint32_t finish_int_ms; - 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); + 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