aboutsummaryrefslogtreecommitdiff
path: root/tools/test-js-optimizer-t3-output.js
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2012-11-22 19:17:22 +0100
committerAlon Zakai <alonzakai@gmail.com>2012-11-22 19:17:22 +0100
commit5574093577a72ddc4c4563cf40dd643c1e74dd59 (patch)
treee48819670e411e31c532bec3fe05b7b7d6c6c2c1 /tools/test-js-optimizer-t3-output.js
parent4fff561b7bf2e3c6b8330460fceddb8c4c6d6c8b (diff)
fix test_js_optimizer
Diffstat (limited to 'tools/test-js-optimizer-t3-output.js')
-rw-r--r--tools/test-js-optimizer-t3-output.js49
1 files changed, 49 insertions, 0 deletions
diff --git a/tools/test-js-optimizer-t3-output.js b/tools/test-js-optimizer-t3-output.js
new file mode 100644
index 00000000..924868fa
--- /dev/null
+++ b/tools/test-js-optimizer-t3-output.js
@@ -0,0 +1,49 @@
+function _png_create_write_struct_2($user_png_ver, $error_ptr, $error_fn, $warn_fn, $mem_ptr, $malloc_fn, $free_fn) {
+ var $png_ptr$s2;
+ var label;
+ label = 2;
+ var setjmpTable = {
+ "2": (function(value) {
+ label = 5;
+ $call1 = value;
+ }),
+ dummy: 0
+ };
+ while (1) try {
+ switch (label) {
+ case 2:
+ var $png_ptr;
+ var $call = _png_create_struct(1);
+ $png_ptr = $call;
+ var $call1 = (HEAP32[$png_ptr >> 2] = label, 0);
+ label = 5;
+ break;
+ case 5:
+ var $2 = $png_ptr;
+ if (($call1 | 0) == 0) {
+ label = 4;
+ break;
+ } else {
+ label = 3;
+ break;
+ }
+ case 3:
+ var $4 = HEAP32[($png_ptr >> 2) + (148 >> 2)];
+ _png_free($2, $4);
+ HEAP32[($png_ptr >> 2) + (148 >> 2)] = 0;
+ _png_destroy_struct($png_ptr);
+ var $retval_0 = 0;
+ label = 4;
+ break;
+ case 4:
+ var $retval_0;
+ return $retval_0;
+ default:
+ assert(0, "bad label: " + label);
+ }
+ } catch (e) {
+ if (!e.longjmp) throw e;
+ setjmpTable[e.label](e.value);
+ }
+}
+