aboutsummaryrefslogtreecommitdiff
path: root/tests/embind/embind.benchmark.js
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2013-05-03 13:40:01 -0700
committerAlon Zakai <alonzakai@gmail.com>2013-05-03 13:40:01 -0700
commit1e3e0e5cf1ab9866faadbce1b1861d9fd79a80fb (patch)
tree7219f013034ead2e3926bc83e75ab3191d80db5e /tests/embind/embind.benchmark.js
parent6c531cbf21e4b332f963b977434dc897e914ca7b (diff)
parent8237fb35bcfb721eefb9c1608856b36a6adb852e (diff)
Merge pull request #1126 from imvu/more_embind_updates
More embind updates
Diffstat (limited to 'tests/embind/embind.benchmark.js')
-rw-r--r--tests/embind/embind.benchmark.js26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/embind/embind.benchmark.js b/tests/embind/embind.benchmark.js
index fcbd64ef..7b20db88 100644
--- a/tests/embind/embind.benchmark.js
+++ b/tests/embind/embind.benchmark.js
@@ -222,3 +222,29 @@ function _pass_gameobject_ptr_benchmark_embind_js() {
Module.print("JS embind pass_gameobject_ptr " + N + " iters: " + (b-a) + " msecs.");
}
+function _call_through_interface0() {
+ var N = 1000000;
+ var obj = Module['Interface'].implement({
+ call0: function() {
+ }
+ });
+ var start = _emscripten_get_now();
+ Module['callInterface0'](N, obj);
+ var elapsed = _emscripten_get_now() - start;
+ Module.print("C++ -> JS void through interface " + N + " iters: " + elapsed + " msecs.");
+ obj.delete();
+}
+
+function _call_through_interface1() {
+ var N = 1000000;
+ var obj = Module['Interface'].implement({
+ call1: function(s1, s2) {
+ return s1 + s2;
+ }
+ });
+ var start = _emscripten_get_now();
+ Module['callInterface1'](N, obj);
+ var elapsed = _emscripten_get_now() - start;
+ Module.print("C++ -> JS std::wstring through interface " + N + " iters: " + elapsed + " msecs.");
+ obj.delete();
+}