• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright 2014 the V8 project authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5function Module() {
6  "use asm";
7
8  function w0(a) {
9    a = a | 0;
10    if (a) while (1);
11    return 42;
12  }
13
14  function w1(a) {
15    a = a | 0;
16    while (1) return 42;
17    return 106;
18  }
19
20  function d0(a) {
21    a = a | 0;
22    if (a) do ; while(1);
23    return 42;
24  }
25
26  function d1(a) {
27    a = a | 0;
28    do return 42; while(1);
29    return 107;
30  }
31
32  function f0(a) {
33    a = a | 0;
34    if (a) for (;;) ;
35    return 42;
36  }
37
38  function f1(a) {
39    a = a | 0;
40    for(;;) return 42;
41    return 108;
42  }
43
44  return { w0: w0, w1: w1, d0: d0, d1: d1, f0: f0, f1: f1 };
45}
46
47var m = Module();
48assertEquals(42, m.w0(0));
49assertEquals(42, m.w1(0));
50assertEquals(42, m.d0(0));
51assertEquals(42, m.d1(0));
52assertEquals(42, m.f0(0));
53assertEquals(42, m.f1(0));
54