| //------------------------------------------------------------------------------------------------------- |
| // Copyright (C) Microsoft. All rights reserved. |
| // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. |
| //------------------------------------------------------------------------------------------------------- |
| |
| // nested for loop with return |
| function AsmModule() { |
| "use asm"; |
| var x1 = 10; |
| function f3(x,y){ |
| x = x|0; |
| y = +y; |
| var m = 1000; |
| var n = 10; |
| var z = 11; |
| |
| for( m = 0; (m|0) < 50 ; m = (m+1)|0) |
| { |
| x = (x+1)|0 |
| if( (x|0) > 10) |
| { |
| for( n = 0; (n|0) < 100 ; n = (n+1)|0) |
| { |
| if((n|0) > 50) |
| return (x + z)|0; |
| x = (x+1)|0; |
| z = (z+1)|0; |
| } |
| } |
| } |
| return (x + z)|0; |
| } |
| |
| return f3 |
| } |
| |
| var f3 = AsmModule(); |
| print(f3 (1,1.5)); |
| print(f3 (1,1.5)); |
| |
| let asmHeap = new ArrayBuffer(1 << 20); |
| let m = function (stdlib, foreign, heap) { |
| 'use asm'; |
| function f(i0) { |
| i0 = i0 | 0; |
| return !i0; |
| } |
| return f; |
| }({}, {}, asmHeap); |
| print(m()); |
| print(m()); |