• 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
5var stdlib = this;
6var buffer = new ArrayBuffer(64 * 1024);
7var foreign = {}
8
9
10var zext8 = (function Module(stdlib, foreign, heap) {
11  "use asm";
12  function zext8(i) {
13    i = i|0;
14    return i & 0xff;
15  }
16  return { zext8: zext8 };
17})(stdlib, foreign, buffer).zext8;
18
19assertEquals(0, zext8(0));
20assertEquals(0, zext8(0x100));
21assertEquals(0xff, zext8(-1));
22assertEquals(0xff, zext8(0xff));
23
24
25var zext16 = (function Module(stdlib, foreign, heap) {
26  "use asm";
27  function zext16(i) {
28    i = i|0;
29    return i & 0xffff;
30  }
31  return { zext16: zext16 };
32})(stdlib, foreign, buffer).zext16;
33
34assertEquals(0, zext16(0));
35assertEquals(0, zext16(0x10000));
36assertEquals(0xffff, zext16(-1));
37assertEquals(0xffff, zext16(0xffff));
38