fi
for opt in "$@"; do
- prepare_res "$name$opt.dat" "$opt" "nitg-g with option $opt"
- run_compiler "nitg-g$opt" ./nitg --global $opt
+ ot=${opt// /+}
+ prepare_res "$name$ot.dat" "$opt" "nitg-g with option $opt"
+ run_compiler "nitg-g$ot" ./nitg --global $opt
done
plot "$name.gnu"
}
bench_nitg-g_options "slower" --hardening
-bench_nitg-g_options "nocheck" --no-check-covariance --no-check-initialization --no-check-assert --no-check-autocast --no-check-other
+bench_nitg-g_options "nocheck" --no-check-covariance --no-check-attr-isset --no-check-assert --no-check-autocast --no-check-other
function bench_nitg-s_options()
{
fi
for opt in "$@"; do
- prepare_res "$name$opt.dat" "$opt" "nitg-s with option $opt"
- run_compiler "nitg-s$opt" ./nitg --separate $opt
+ ot=${opt// /+}
+ prepare_res "$name-$ot.dat" "$opt" "nitg-s with option $opt"
+ run_compiler "nitg-s$ot" ./nitg --separate $opt
done
plot "$name.gnu"
}
-bench_nitg-s_options "slower" --hardening --no-inline-intern --no-union-attribute --no-shortcut-equal --no-shortcut-range
-bench_nitg-s_options "nocheck" --no-check-covariance --no-check-initialization --no-check-assert --no-check-autocast --no-check-other
-bench_nitg-s_options "faster" --inline-coloring-numbers
-bench_nitg-s_options "typing" NOALL --bm-typing --phand-typing
+bench_nitg-s_options "slower" --hardening --no-inline-intern --no-union-attribute --no-shortcut-equal --no-shortcut-range "--no-gcc-directive likely" "--no-gcc-directive noreturn"
+bench_nitg-s_options "nocheck" --no-check-covariance --no-check-attr-isset --no-check-assert --no-check-autocast --no-check-other
+bench_nitg-s_options "faster" --inline-coloring-numbers --inline-some-methods --direct-call-monomorph "--inline-some-methods --direct-call-monomorph"
function bench_nitg-e_options()
{
fi
for opt in "$@"; do
- prepare_res "$name$opt.dat" "$opt" "nitg-e with option $opt"
- run_compiler "nitg-e$opt" ./nitg --erasure $opt
+ ot=${opt// /+}
+ prepare_res "$name$ot.dat" "$opt" "nitg-e with option $opt"
+ run_compiler "nitg-e$ot" ./nitg --erasure $opt
done
plot "$name.gnu"
}
bench_nitg-e_options "slower" --hardening --no-inline-intern --no-union-attribute --no-shortcut-equal --no-shortcut-range
-bench_nitg-e_options "nocheck" --no-check-covariance --no-check-initialization --no-check-assert --no-check-autocast --no-check-other --no-check-erasure-cast
+bench_nitg-e_options "nocheck" --no-check-covariance --no-check-attr-isset --no-check-assert --no-check-autocast --no-check-other --no-check-erasure-cast
bench_nitg-e_options "faster" --inline-coloring-numbers
-bench_nitg-e_options "typing" NOALL --bm-typing # --phand-typing
function bench_engines()
{
}
bench_policy
+function bench_nullables()
+{
+ name="$FUNCNAME"
+ skip_test "$name" && return
+ prepare_res "$name-nitc.dat" "nitc" "nitc no options"
+ run_compiler "nitc" ./nitg --separate
+ prepare_res "$name-nitc-ni.dat" "nitc-ni" "nitc --no-check-attr-isset"
+ run_compiler "nitc" ./nitg --separate --no-check-attr-isset
+ prepare_res "$name-nitc-nu.dat" "nitc-nu" "nitc --no-union-attribute"
+ run_compiler "nitc" ./nitg --separate --no-union-attribute
+ prepare_res "$name-nitc-nu-ni.dat" "nitc-nu-ni" "nitc --no-union-attribute --no-check-attr-isset"
+ run_compiler "nitc" ./nitg --separate --no-union-attribute --no-check-attr-isset
+ plot "$name.gnu"
+}
+bench_nullables
+
function bench_compilation_time
{
name="$FUNCNAME"
skip_test "$name" && return
- prepare_res "$name-nitc.dat" "nitc" "nitc"
- for i in ../examples/hello_world.nit ../src/test_parser.nit ../src/nitg.nit; do
- bench_command `basename "$i" .nit` "" ../src/nitc_3 -O "$i" --no-cc
- done
- prepare_res "$name-nitg.dat" "nitg-g" "nitg --global"
+ prepare_res "$name-nitg-g.dat" "nitg-g" "nitg --global"
for i in ../examples/hello_world.nit ../src/test_parser.nit ../src/nitg.nit; do
bench_command `basename "$i" .nit` "" ./nitg --global "$i" --no-cc
done
- prepare_res "$name-nitg-e.dat" "nitg-e" "nitg --separate"
+ prepare_res "$name-nitg-s.dat" "nitg-s" "nitg --separate"
for i in ../examples/hello_world.nit ../src/test_parser.nit ../src/nitg.nit; do
bench_command `basename "$i" .nit` "" ./nitg --separate "$i" --no-cc
done