| //------------------------------------------------------------------------------------------------------- |
| // Copyright (C) Microsoft. All rights reserved. |
| // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. |
| //------------------------------------------------------------------------------------------------------- |
| |
| function equal(a, b) { |
| if (a == b) |
| { |
| print("Correct"); |
| } |
| else |
| { |
| print(">> Fail!"); |
| } |
| } |
| function testReplaceLane1() { |
| print("Int32x4 Lane1"); |
| var a = SIMD.Int32x4(16, 9, 4, 1); |
| var c = SIMD.Int32x4.replaceLane(a, false, 20); |
| equal(20, SIMD.Int32x4.extractLane(c, false)); |
| equal(9, SIMD.Int32x4.extractLane(c, true)); |
| equal(4, SIMD.Int32x4.extractLane(c, "2")); |
| equal(1, SIMD.Int32x4.extractLane(c, [3])); |
| |
| } |
| |
| function testReplaceLane2() { |
| print("Int32x4 Lane2"); |
| var a = SIMD.Int32x4(16, 9, 4, 1); |
| var c = SIMD.Int32x4.replaceLane(a, true, 20); |
| |
| equal(16, SIMD.Int32x4.extractLane(c, 0)); |
| equal(20, SIMD.Int32x4.extractLane(c, 1)); |
| equal(4, SIMD.Int32x4.extractLane(c, 2)); |
| equal(1, SIMD.Int32x4.extractLane(c, 3)); |
| |
| } |
| |
| function testReplaceLane3() { |
| print("Int32x4 Lane3"); |
| var a = SIMD.Int32x4(16, 9, 4, 1); |
| var c = SIMD.Int32x4.replaceLane(a, ["2"], 20); |
| |
| equal(16, SIMD.Int32x4.extractLane(c, 0)); |
| equal(9, SIMD.Int32x4.extractLane(c, 1)); |
| equal(20, SIMD.Int32x4.extractLane(c, 2)); |
| equal(1, SIMD.Int32x4.extractLane(c, 3)); |
| |
| } |
| |
| function testReplaceLane4() { |
| print("Int32x4 Lane4"); |
| var a = SIMD.Int32x4(16, 9, 4, 1); |
| var c = SIMD.Int32x4.replaceLane(a, 3, 20); |
| |
| equal(16, SIMD.Int32x4.extractLane(c, 0)); |
| equal(9, SIMD.Int32x4.extractLane(c, 1)); |
| equal(4, SIMD.Int32x4.extractLane(c, 2)); |
| equal(20, SIMD.Int32x4.extractLane(c, 3)); |
| |
| } |
| |
| testReplaceLane1(); |
| testReplaceLane1(); |
| testReplaceLane1(); |
| testReplaceLane1(); |
| testReplaceLane1(); |
| testReplaceLane1(); |
| testReplaceLane1(); |
| testReplaceLane1(); |
| |
| testReplaceLane2(); |
| testReplaceLane2(); |
| testReplaceLane2(); |
| testReplaceLane2(); |
| testReplaceLane2(); |
| testReplaceLane2(); |
| testReplaceLane2(); |
| testReplaceLane2(); |
| |
| testReplaceLane3(); |
| testReplaceLane3(); |
| testReplaceLane3(); |
| testReplaceLane3(); |
| testReplaceLane3(); |
| testReplaceLane3(); |
| testReplaceLane3(); |
| testReplaceLane3(); |
| |
| testReplaceLane4(); |
| testReplaceLane4(); |
| testReplaceLane4(); |
| testReplaceLane4(); |
| testReplaceLane4(); |
| testReplaceLane4(); |
| testReplaceLane4(); |
| testReplaceLane4(); |