| // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| // VMOptions=--optimization-counter-threshold=10 |
| |
| // Library tag to be able to run in html test framework. |
| library float32x4_shuffle_test; |
| |
| import "package:expect/expect.dart"; |
| import 'dart:typed_data'; |
| |
| void testShuffle0() { |
| var m = new Float32x4(1.0, 2.0, 3.0, 4.0); |
| var c; |
| c = m.xxxx; |
| Expect.equals(1.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.xxxy; |
| Expect.equals(1.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.xxxz; |
| Expect.equals(1.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.xxxw; |
| Expect.equals(1.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.xxyx; |
| Expect.equals(1.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.xxyy; |
| Expect.equals(1.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.xxyz; |
| Expect.equals(1.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.xxyw; |
| Expect.equals(1.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.xxzx; |
| Expect.equals(1.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.xxzy; |
| Expect.equals(1.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.xxzz; |
| Expect.equals(1.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.xxzw; |
| Expect.equals(1.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.xxwx; |
| Expect.equals(1.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.xxwy; |
| Expect.equals(1.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.xxwz; |
| Expect.equals(1.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.xxww; |
| Expect.equals(1.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.xyxx; |
| Expect.equals(1.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.xyxy; |
| Expect.equals(1.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.xyxz; |
| Expect.equals(1.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.xyxw; |
| Expect.equals(1.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.xyyx; |
| Expect.equals(1.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.xyyy; |
| Expect.equals(1.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.xyyz; |
| Expect.equals(1.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.xyyw; |
| Expect.equals(1.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.xyzx; |
| Expect.equals(1.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.xyzy; |
| Expect.equals(1.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.xyzz; |
| Expect.equals(1.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.xyzw; |
| Expect.equals(1.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.xywx; |
| Expect.equals(1.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.xywy; |
| Expect.equals(1.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.xywz; |
| Expect.equals(1.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.xyww; |
| Expect.equals(1.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.xzxx; |
| Expect.equals(1.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.xzxy; |
| Expect.equals(1.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.xzxz; |
| Expect.equals(1.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.xzxw; |
| Expect.equals(1.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.xzyx; |
| Expect.equals(1.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.xzyy; |
| Expect.equals(1.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.xzyz; |
| Expect.equals(1.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.xzyw; |
| Expect.equals(1.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.xzzx; |
| Expect.equals(1.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.xzzy; |
| Expect.equals(1.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.xzzz; |
| Expect.equals(1.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.xzzw; |
| Expect.equals(1.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.xzwx; |
| Expect.equals(1.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.xzwy; |
| Expect.equals(1.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.xzwz; |
| Expect.equals(1.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.xzww; |
| Expect.equals(1.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.xwxx; |
| Expect.equals(1.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.xwxy; |
| Expect.equals(1.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.xwxz; |
| Expect.equals(1.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.xwxw; |
| Expect.equals(1.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.xwyx; |
| Expect.equals(1.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.xwyy; |
| Expect.equals(1.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.xwyz; |
| Expect.equals(1.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.xwyw; |
| Expect.equals(1.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.xwzx; |
| Expect.equals(1.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.xwzy; |
| Expect.equals(1.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.xwzz; |
| Expect.equals(1.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.xwzw; |
| Expect.equals(1.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.xwwx; |
| Expect.equals(1.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.xwwy; |
| Expect.equals(1.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.xwwz; |
| Expect.equals(1.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.xwww; |
| Expect.equals(1.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(4.0, c.w); |
| } |
| |
| void testShuffle1() { |
| var m = new Float32x4(1.0, 2.0, 3.0, 4.0); |
| var c; |
| c = m.yxxx; |
| Expect.equals(2.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.yxxy; |
| Expect.equals(2.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.yxxz; |
| Expect.equals(2.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.yxxw; |
| Expect.equals(2.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.yxyx; |
| Expect.equals(2.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.yxyy; |
| Expect.equals(2.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.yxyz; |
| Expect.equals(2.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.yxyw; |
| Expect.equals(2.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.yxzx; |
| Expect.equals(2.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.yxzy; |
| Expect.equals(2.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.yxzz; |
| Expect.equals(2.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.yxzw; |
| Expect.equals(2.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.yxwx; |
| Expect.equals(2.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.yxwy; |
| Expect.equals(2.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.yxwz; |
| Expect.equals(2.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.yxww; |
| Expect.equals(2.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.yyxx; |
| Expect.equals(2.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.yyxy; |
| Expect.equals(2.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.yyxz; |
| Expect.equals(2.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.yyxw; |
| Expect.equals(2.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.yyyx; |
| Expect.equals(2.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.yyyy; |
| Expect.equals(2.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.yyyz; |
| Expect.equals(2.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.yyyw; |
| Expect.equals(2.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.yyzx; |
| Expect.equals(2.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.yyzy; |
| Expect.equals(2.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.yyzz; |
| Expect.equals(2.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.yyzw; |
| Expect.equals(2.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.yywx; |
| Expect.equals(2.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.yywy; |
| Expect.equals(2.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.yywz; |
| Expect.equals(2.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.yyww; |
| Expect.equals(2.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.yzxx; |
| Expect.equals(2.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.yzxy; |
| Expect.equals(2.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.yzxz; |
| Expect.equals(2.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.yzxw; |
| Expect.equals(2.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.yzyx; |
| Expect.equals(2.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.yzyy; |
| Expect.equals(2.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.yzyz; |
| Expect.equals(2.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.yzyw; |
| Expect.equals(2.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.yzzx; |
| Expect.equals(2.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.yzzy; |
| Expect.equals(2.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.yzzz; |
| Expect.equals(2.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.yzzw; |
| Expect.equals(2.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.yzwx; |
| Expect.equals(2.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.yzwy; |
| Expect.equals(2.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.yzwz; |
| Expect.equals(2.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.yzww; |
| Expect.equals(2.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.ywxx; |
| Expect.equals(2.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.ywxy; |
| Expect.equals(2.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.ywxz; |
| Expect.equals(2.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.ywxw; |
| Expect.equals(2.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.ywyx; |
| Expect.equals(2.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.ywyy; |
| Expect.equals(2.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.ywyz; |
| Expect.equals(2.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.ywyw; |
| Expect.equals(2.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.ywzx; |
| Expect.equals(2.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.ywzy; |
| Expect.equals(2.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.ywzz; |
| Expect.equals(2.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.ywzw; |
| Expect.equals(2.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.ywwx; |
| Expect.equals(2.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.ywwy; |
| Expect.equals(2.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.ywwz; |
| Expect.equals(2.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.ywww; |
| Expect.equals(2.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(4.0, c.w); |
| } |
| |
| void testShuffle2() { |
| var m = new Float32x4(1.0, 2.0, 3.0, 4.0); |
| var c; |
| c = m.zxxx; |
| Expect.equals(3.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.zxxy; |
| Expect.equals(3.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.zxxz; |
| Expect.equals(3.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.zxxw; |
| Expect.equals(3.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.zxyx; |
| Expect.equals(3.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.zxyy; |
| Expect.equals(3.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.zxyz; |
| Expect.equals(3.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.zxyw; |
| Expect.equals(3.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.zxzx; |
| Expect.equals(3.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.zxzy; |
| Expect.equals(3.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.zxzz; |
| Expect.equals(3.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.zxzw; |
| Expect.equals(3.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.zxwx; |
| Expect.equals(3.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.zxwy; |
| Expect.equals(3.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.zxwz; |
| Expect.equals(3.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.zxww; |
| Expect.equals(3.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.zyxx; |
| Expect.equals(3.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.zyxy; |
| Expect.equals(3.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.zyxz; |
| Expect.equals(3.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.zyxw; |
| Expect.equals(3.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.zyyx; |
| Expect.equals(3.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.zyyy; |
| Expect.equals(3.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.zyyz; |
| Expect.equals(3.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.zyyw; |
| Expect.equals(3.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.zyzx; |
| Expect.equals(3.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.zyzy; |
| Expect.equals(3.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.zyzz; |
| Expect.equals(3.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.zyzw; |
| Expect.equals(3.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.zywx; |
| Expect.equals(3.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.zywy; |
| Expect.equals(3.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.zywz; |
| Expect.equals(3.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.zyww; |
| Expect.equals(3.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.zzxx; |
| Expect.equals(3.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.zzxy; |
| Expect.equals(3.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.zzxz; |
| Expect.equals(3.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.zzxw; |
| Expect.equals(3.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.zzyx; |
| Expect.equals(3.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.zzyy; |
| Expect.equals(3.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.zzyz; |
| Expect.equals(3.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.zzyw; |
| Expect.equals(3.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.zzzx; |
| Expect.equals(3.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.zzzy; |
| Expect.equals(3.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.zzzz; |
| Expect.equals(3.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.zzzw; |
| Expect.equals(3.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.zzwx; |
| Expect.equals(3.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.zzwy; |
| Expect.equals(3.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.zzwz; |
| Expect.equals(3.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.zzww; |
| Expect.equals(3.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.zwxx; |
| Expect.equals(3.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.zwxy; |
| Expect.equals(3.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.zwxz; |
| Expect.equals(3.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.zwxw; |
| Expect.equals(3.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.zwyx; |
| Expect.equals(3.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.zwyy; |
| Expect.equals(3.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.zwyz; |
| Expect.equals(3.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.zwyw; |
| Expect.equals(3.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.zwzx; |
| Expect.equals(3.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.zwzy; |
| Expect.equals(3.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.zwzz; |
| Expect.equals(3.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.zwzw; |
| Expect.equals(3.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.zwwx; |
| Expect.equals(3.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.zwwy; |
| Expect.equals(3.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.zwwz; |
| Expect.equals(3.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.zwww; |
| Expect.equals(3.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(4.0, c.w); |
| } |
| |
| void testShuffle3() { |
| var m = new Float32x4(1.0, 2.0, 3.0, 4.0); |
| var c; |
| c = m.wxxx; |
| Expect.equals(4.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.wxxy; |
| Expect.equals(4.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.wxxz; |
| Expect.equals(4.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.wxxw; |
| Expect.equals(4.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.wxyx; |
| Expect.equals(4.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.wxyy; |
| Expect.equals(4.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.wxyz; |
| Expect.equals(4.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.wxyw; |
| Expect.equals(4.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.wxzx; |
| Expect.equals(4.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.wxzy; |
| Expect.equals(4.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.wxzz; |
| Expect.equals(4.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.wxzw; |
| Expect.equals(4.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.wxwx; |
| Expect.equals(4.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.wxwy; |
| Expect.equals(4.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.wxwz; |
| Expect.equals(4.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.wxww; |
| Expect.equals(4.0, c.x); |
| Expect.equals(1.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.wyxx; |
| Expect.equals(4.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.wyxy; |
| Expect.equals(4.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.wyxz; |
| Expect.equals(4.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.wyxw; |
| Expect.equals(4.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.wyyx; |
| Expect.equals(4.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.wyyy; |
| Expect.equals(4.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.wyyz; |
| Expect.equals(4.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.wyyw; |
| Expect.equals(4.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.wyzx; |
| Expect.equals(4.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.wyzy; |
| Expect.equals(4.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.wyzz; |
| Expect.equals(4.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.wyzw; |
| Expect.equals(4.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.wywx; |
| Expect.equals(4.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.wywy; |
| Expect.equals(4.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.wywz; |
| Expect.equals(4.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.wyww; |
| Expect.equals(4.0, c.x); |
| Expect.equals(2.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.wzxx; |
| Expect.equals(4.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.wzxy; |
| Expect.equals(4.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.wzxz; |
| Expect.equals(4.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.wzxw; |
| Expect.equals(4.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.wzyx; |
| Expect.equals(4.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.wzyy; |
| Expect.equals(4.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.wzyz; |
| Expect.equals(4.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.wzyw; |
| Expect.equals(4.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.wzzx; |
| Expect.equals(4.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.wzzy; |
| Expect.equals(4.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.wzzz; |
| Expect.equals(4.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.wzzw; |
| Expect.equals(4.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.wzwx; |
| Expect.equals(4.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.wzwy; |
| Expect.equals(4.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.wzwz; |
| Expect.equals(4.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.wzww; |
| Expect.equals(4.0, c.x); |
| Expect.equals(3.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.wwxx; |
| Expect.equals(4.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.wwxy; |
| Expect.equals(4.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.wwxz; |
| Expect.equals(4.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.wwxw; |
| Expect.equals(4.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(1.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.wwyx; |
| Expect.equals(4.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.wwyy; |
| Expect.equals(4.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.wwyz; |
| Expect.equals(4.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.wwyw; |
| Expect.equals(4.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(2.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.wwzx; |
| Expect.equals(4.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.wwzy; |
| Expect.equals(4.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.wwzz; |
| Expect.equals(4.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.wwzw; |
| Expect.equals(4.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(3.0, c.z); |
| Expect.equals(4.0, c.w); |
| c = m.wwwx; |
| Expect.equals(4.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(1.0, c.w); |
| c = m.wwwy; |
| Expect.equals(4.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(2.0, c.w); |
| c = m.wwwz; |
| Expect.equals(4.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(3.0, c.w); |
| c = m.wwww; |
| Expect.equals(4.0, c.x); |
| Expect.equals(4.0, c.y); |
| Expect.equals(4.0, c.z); |
| Expect.equals(4.0, c.w); |
| } |
| |
| |
| main() { |
| for (int i = 0; i < 20; i++) { |
| testShuffle0(); |
| testShuffle1(); |
| testShuffle2(); |
| testShuffle3(); |
| } |
| } |