use while in benchmark

This commit is contained in:
lyon 2022-09-23 23:00:36 +08:00
parent 459da8ab5b
commit 3ad4b0e92c
2 changed files with 8 additions and 4 deletions

View File

@ -46,14 +46,18 @@ static void prime_number_100(benchmark::State& state) {
Args* buffs = New_strBuff();
char* pikaAsm = Parser_linesToAsm(buffs, (char*)
"num = 0\n"
"for i in range(2,100):\n"
"i = 2\n"
"while i < 100:\n"
" is_prime = 1\n"
" for j in range(2,i):\n"
" j = 2\n"
" while j < i:\n"
" if i%j==0 :\n"
" is_prime = 0\n"
" break\n"
" j += 1 \n"
" if is_prime:\n"
" num = num + i\n"
" i += 1\n"
"\n");
ByteCodeFrame bytecode_frame;
byteCodeFrame_init(&bytecode_frame);
@ -97,4 +101,4 @@ static void prime_number_100_c(benchmark::State& state) {
}
BENCHMARK(prime_number_100_c)->Unit(benchmark::kMillisecond);
BENCHMARK_MAIN();
BENCHMARK_MAIN();

View File

@ -1,2 +1,2 @@
cd build && rm ./test/pikascript_test -f && ninja
cd build && rm ./test/pikascript_test -f && ninja -j8
cd .. && cp ./build/boot/demo06-pikamain/pikascript_demo06-pikamain package/pikascript/pika