Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1032)

Unified Diff: runtime/lib/typed_data.dart

Issue 19564014: Add all 256 shuffle methods to Float32x4 (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « runtime/lib/simd128.cc ('k') | runtime/vm/bootstrap_natives.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/lib/typed_data.dart
diff --git a/runtime/lib/typed_data.dart b/runtime/lib/typed_data.dart
index f2fde0d5668650c6efb80b97611dc7545e4ab502..15a8debb21b315087e2fbac1073d58a5826c3871 100644
--- a/runtime/lib/typed_data.dart
+++ b/runtime/lib/typed_data.dart
@@ -2006,10 +2006,263 @@ class _Float32x4 implements Float32x4 {
double get y native "Float32x4_getY";
double get z native "Float32x4_getZ";
double get w native "Float32x4_getW";
- Float32x4 get xxxx native "Float32x4_getXXXX";
- Float32x4 get yyyy native "Float32x4_getYYYY";
- Float32x4 get zzzz native "Float32x4_getZZZZ";
- Float32x4 get wwww native "Float32x4_getWWWW";
+ Float32x4 get xxxx => _shuffle(0x0);
+ Float32x4 get xxxy => _shuffle(0x40);
+ Float32x4 get xxxz => _shuffle(0x80);
+ Float32x4 get xxxw => _shuffle(0xC0);
+ Float32x4 get xxyx => _shuffle(0x10);
+ Float32x4 get xxyy => _shuffle(0x50);
+ Float32x4 get xxyz => _shuffle(0x90);
+ Float32x4 get xxyw => _shuffle(0xD0);
+ Float32x4 get xxzx => _shuffle(0x20);
+ Float32x4 get xxzy => _shuffle(0x60);
+ Float32x4 get xxzz => _shuffle(0xA0);
+ Float32x4 get xxzw => _shuffle(0xE0);
+ Float32x4 get xxwx => _shuffle(0x30);
+ Float32x4 get xxwy => _shuffle(0x70);
+ Float32x4 get xxwz => _shuffle(0xB0);
+ Float32x4 get xxww => _shuffle(0xF0);
+ Float32x4 get xyxx => _shuffle(0x4);
+ Float32x4 get xyxy => _shuffle(0x44);
+ Float32x4 get xyxz => _shuffle(0x84);
+ Float32x4 get xyxw => _shuffle(0xC4);
+ Float32x4 get xyyx => _shuffle(0x14);
+ Float32x4 get xyyy => _shuffle(0x54);
+ Float32x4 get xyyz => _shuffle(0x94);
+ Float32x4 get xyyw => _shuffle(0xD4);
+ Float32x4 get xyzx => _shuffle(0x24);
+ Float32x4 get xyzy => _shuffle(0x64);
+ Float32x4 get xyzz => _shuffle(0xA4);
+ Float32x4 get xyzw => _shuffle(0xE4);
+ Float32x4 get xywx => _shuffle(0x34);
+ Float32x4 get xywy => _shuffle(0x74);
+ Float32x4 get xywz => _shuffle(0xB4);
+ Float32x4 get xyww => _shuffle(0xF4);
+ Float32x4 get xzxx => _shuffle(0x8);
+ Float32x4 get xzxy => _shuffle(0x48);
+ Float32x4 get xzxz => _shuffle(0x88);
+ Float32x4 get xzxw => _shuffle(0xC8);
+ Float32x4 get xzyx => _shuffle(0x18);
+ Float32x4 get xzyy => _shuffle(0x58);
+ Float32x4 get xzyz => _shuffle(0x98);
+ Float32x4 get xzyw => _shuffle(0xD8);
+ Float32x4 get xzzx => _shuffle(0x28);
+ Float32x4 get xzzy => _shuffle(0x68);
+ Float32x4 get xzzz => _shuffle(0xA8);
+ Float32x4 get xzzw => _shuffle(0xE8);
+ Float32x4 get xzwx => _shuffle(0x38);
+ Float32x4 get xzwy => _shuffle(0x78);
+ Float32x4 get xzwz => _shuffle(0xB8);
+ Float32x4 get xzww => _shuffle(0xF8);
+ Float32x4 get xwxx => _shuffle(0xC);
+ Float32x4 get xwxy => _shuffle(0x4C);
+ Float32x4 get xwxz => _shuffle(0x8C);
+ Float32x4 get xwxw => _shuffle(0xCC);
+ Float32x4 get xwyx => _shuffle(0x1C);
+ Float32x4 get xwyy => _shuffle(0x5C);
+ Float32x4 get xwyz => _shuffle(0x9C);
+ Float32x4 get xwyw => _shuffle(0xDC);
+ Float32x4 get xwzx => _shuffle(0x2C);
+ Float32x4 get xwzy => _shuffle(0x6C);
+ Float32x4 get xwzz => _shuffle(0xAC);
+ Float32x4 get xwzw => _shuffle(0xEC);
+ Float32x4 get xwwx => _shuffle(0x3C);
+ Float32x4 get xwwy => _shuffle(0x7C);
+ Float32x4 get xwwz => _shuffle(0xBC);
+ Float32x4 get xwww => _shuffle(0xFC);
+ Float32x4 get yxxx => _shuffle(0x1);
+ Float32x4 get yxxy => _shuffle(0x41);
+ Float32x4 get yxxz => _shuffle(0x81);
+ Float32x4 get yxxw => _shuffle(0xC1);
+ Float32x4 get yxyx => _shuffle(0x11);
+ Float32x4 get yxyy => _shuffle(0x51);
+ Float32x4 get yxyz => _shuffle(0x91);
+ Float32x4 get yxyw => _shuffle(0xD1);
+ Float32x4 get yxzx => _shuffle(0x21);
+ Float32x4 get yxzy => _shuffle(0x61);
+ Float32x4 get yxzz => _shuffle(0xA1);
+ Float32x4 get yxzw => _shuffle(0xE1);
+ Float32x4 get yxwx => _shuffle(0x31);
+ Float32x4 get yxwy => _shuffle(0x71);
+ Float32x4 get yxwz => _shuffle(0xB1);
+ Float32x4 get yxww => _shuffle(0xF1);
+ Float32x4 get yyxx => _shuffle(0x5);
+ Float32x4 get yyxy => _shuffle(0x45);
+ Float32x4 get yyxz => _shuffle(0x85);
+ Float32x4 get yyxw => _shuffle(0xC5);
+ Float32x4 get yyyx => _shuffle(0x15);
+ Float32x4 get yyyy => _shuffle(0x55);
+ Float32x4 get yyyz => _shuffle(0x95);
+ Float32x4 get yyyw => _shuffle(0xD5);
+ Float32x4 get yyzx => _shuffle(0x25);
+ Float32x4 get yyzy => _shuffle(0x65);
+ Float32x4 get yyzz => _shuffle(0xA5);
+ Float32x4 get yyzw => _shuffle(0xE5);
+ Float32x4 get yywx => _shuffle(0x35);
+ Float32x4 get yywy => _shuffle(0x75);
+ Float32x4 get yywz => _shuffle(0xB5);
+ Float32x4 get yyww => _shuffle(0xF5);
+ Float32x4 get yzxx => _shuffle(0x9);
+ Float32x4 get yzxy => _shuffle(0x49);
+ Float32x4 get yzxz => _shuffle(0x89);
+ Float32x4 get yzxw => _shuffle(0xC9);
+ Float32x4 get yzyx => _shuffle(0x19);
+ Float32x4 get yzyy => _shuffle(0x59);
+ Float32x4 get yzyz => _shuffle(0x99);
+ Float32x4 get yzyw => _shuffle(0xD9);
+ Float32x4 get yzzx => _shuffle(0x29);
+ Float32x4 get yzzy => _shuffle(0x69);
+ Float32x4 get yzzz => _shuffle(0xA9);
+ Float32x4 get yzzw => _shuffle(0xE9);
+ Float32x4 get yzwx => _shuffle(0x39);
+ Float32x4 get yzwy => _shuffle(0x79);
+ Float32x4 get yzwz => _shuffle(0xB9);
+ Float32x4 get yzww => _shuffle(0xF9);
+ Float32x4 get ywxx => _shuffle(0xD);
+ Float32x4 get ywxy => _shuffle(0x4D);
+ Float32x4 get ywxz => _shuffle(0x8D);
+ Float32x4 get ywxw => _shuffle(0xCD);
+ Float32x4 get ywyx => _shuffle(0x1D);
+ Float32x4 get ywyy => _shuffle(0x5D);
+ Float32x4 get ywyz => _shuffle(0x9D);
+ Float32x4 get ywyw => _shuffle(0xDD);
+ Float32x4 get ywzx => _shuffle(0x2D);
+ Float32x4 get ywzy => _shuffle(0x6D);
+ Float32x4 get ywzz => _shuffle(0xAD);
+ Float32x4 get ywzw => _shuffle(0xED);
+ Float32x4 get ywwx => _shuffle(0x3D);
+ Float32x4 get ywwy => _shuffle(0x7D);
+ Float32x4 get ywwz => _shuffle(0xBD);
+ Float32x4 get ywww => _shuffle(0xFD);
+ Float32x4 get zxxx => _shuffle(0x2);
+ Float32x4 get zxxy => _shuffle(0x42);
+ Float32x4 get zxxz => _shuffle(0x82);
+ Float32x4 get zxxw => _shuffle(0xC2);
+ Float32x4 get zxyx => _shuffle(0x12);
+ Float32x4 get zxyy => _shuffle(0x52);
+ Float32x4 get zxyz => _shuffle(0x92);
+ Float32x4 get zxyw => _shuffle(0xD2);
+ Float32x4 get zxzx => _shuffle(0x22);
+ Float32x4 get zxzy => _shuffle(0x62);
+ Float32x4 get zxzz => _shuffle(0xA2);
+ Float32x4 get zxzw => _shuffle(0xE2);
+ Float32x4 get zxwx => _shuffle(0x32);
+ Float32x4 get zxwy => _shuffle(0x72);
+ Float32x4 get zxwz => _shuffle(0xB2);
+ Float32x4 get zxww => _shuffle(0xF2);
+ Float32x4 get zyxx => _shuffle(0x6);
+ Float32x4 get zyxy => _shuffle(0x46);
+ Float32x4 get zyxz => _shuffle(0x86);
+ Float32x4 get zyxw => _shuffle(0xC6);
+ Float32x4 get zyyx => _shuffle(0x16);
+ Float32x4 get zyyy => _shuffle(0x56);
+ Float32x4 get zyyz => _shuffle(0x96);
+ Float32x4 get zyyw => _shuffle(0xD6);
+ Float32x4 get zyzx => _shuffle(0x26);
+ Float32x4 get zyzy => _shuffle(0x66);
+ Float32x4 get zyzz => _shuffle(0xA6);
+ Float32x4 get zyzw => _shuffle(0xE6);
+ Float32x4 get zywx => _shuffle(0x36);
+ Float32x4 get zywy => _shuffle(0x76);
+ Float32x4 get zywz => _shuffle(0xB6);
+ Float32x4 get zyww => _shuffle(0xF6);
+ Float32x4 get zzxx => _shuffle(0xA);
+ Float32x4 get zzxy => _shuffle(0x4A);
+ Float32x4 get zzxz => _shuffle(0x8A);
+ Float32x4 get zzxw => _shuffle(0xCA);
+ Float32x4 get zzyx => _shuffle(0x1A);
+ Float32x4 get zzyy => _shuffle(0x5A);
+ Float32x4 get zzyz => _shuffle(0x9A);
+ Float32x4 get zzyw => _shuffle(0xDA);
+ Float32x4 get zzzx => _shuffle(0x2A);
+ Float32x4 get zzzy => _shuffle(0x6A);
+ Float32x4 get zzzz => _shuffle(0xAA);
+ Float32x4 get zzzw => _shuffle(0xEA);
+ Float32x4 get zzwx => _shuffle(0x3A);
+ Float32x4 get zzwy => _shuffle(0x7A);
+ Float32x4 get zzwz => _shuffle(0xBA);
+ Float32x4 get zzww => _shuffle(0xFA);
+ Float32x4 get zwxx => _shuffle(0xE);
+ Float32x4 get zwxy => _shuffle(0x4E);
+ Float32x4 get zwxz => _shuffle(0x8E);
+ Float32x4 get zwxw => _shuffle(0xCE);
+ Float32x4 get zwyx => _shuffle(0x1E);
+ Float32x4 get zwyy => _shuffle(0x5E);
+ Float32x4 get zwyz => _shuffle(0x9E);
+ Float32x4 get zwyw => _shuffle(0xDE);
+ Float32x4 get zwzx => _shuffle(0x2E);
+ Float32x4 get zwzy => _shuffle(0x6E);
+ Float32x4 get zwzz => _shuffle(0xAE);
+ Float32x4 get zwzw => _shuffle(0xEE);
+ Float32x4 get zwwx => _shuffle(0x3E);
+ Float32x4 get zwwy => _shuffle(0x7E);
+ Float32x4 get zwwz => _shuffle(0xBE);
+ Float32x4 get zwww => _shuffle(0xFE);
+ Float32x4 get wxxx => _shuffle(0x3);
+ Float32x4 get wxxy => _shuffle(0x43);
+ Float32x4 get wxxz => _shuffle(0x83);
+ Float32x4 get wxxw => _shuffle(0xC3);
+ Float32x4 get wxyx => _shuffle(0x13);
+ Float32x4 get wxyy => _shuffle(0x53);
+ Float32x4 get wxyz => _shuffle(0x93);
+ Float32x4 get wxyw => _shuffle(0xD3);
+ Float32x4 get wxzx => _shuffle(0x23);
+ Float32x4 get wxzy => _shuffle(0x63);
+ Float32x4 get wxzz => _shuffle(0xA3);
+ Float32x4 get wxzw => _shuffle(0xE3);
+ Float32x4 get wxwx => _shuffle(0x33);
+ Float32x4 get wxwy => _shuffle(0x73);
+ Float32x4 get wxwz => _shuffle(0xB3);
+ Float32x4 get wxww => _shuffle(0xF3);
+ Float32x4 get wyxx => _shuffle(0x7);
+ Float32x4 get wyxy => _shuffle(0x47);
+ Float32x4 get wyxz => _shuffle(0x87);
+ Float32x4 get wyxw => _shuffle(0xC7);
+ Float32x4 get wyyx => _shuffle(0x17);
+ Float32x4 get wyyy => _shuffle(0x57);
+ Float32x4 get wyyz => _shuffle(0x97);
+ Float32x4 get wyyw => _shuffle(0xD7);
+ Float32x4 get wyzx => _shuffle(0x27);
+ Float32x4 get wyzy => _shuffle(0x67);
+ Float32x4 get wyzz => _shuffle(0xA7);
+ Float32x4 get wyzw => _shuffle(0xE7);
+ Float32x4 get wywx => _shuffle(0x37);
+ Float32x4 get wywy => _shuffle(0x77);
+ Float32x4 get wywz => _shuffle(0xB7);
+ Float32x4 get wyww => _shuffle(0xF7);
+ Float32x4 get wzxx => _shuffle(0xB);
+ Float32x4 get wzxy => _shuffle(0x4B);
+ Float32x4 get wzxz => _shuffle(0x8B);
+ Float32x4 get wzxw => _shuffle(0xCB);
+ Float32x4 get wzyx => _shuffle(0x1B);
+ Float32x4 get wzyy => _shuffle(0x5B);
+ Float32x4 get wzyz => _shuffle(0x9B);
+ Float32x4 get wzyw => _shuffle(0xDB);
+ Float32x4 get wzzx => _shuffle(0x2B);
+ Float32x4 get wzzy => _shuffle(0x6B);
+ Float32x4 get wzzz => _shuffle(0xAB);
+ Float32x4 get wzzw => _shuffle(0xEB);
+ Float32x4 get wzwx => _shuffle(0x3B);
+ Float32x4 get wzwy => _shuffle(0x7B);
+ Float32x4 get wzwz => _shuffle(0xBB);
+ Float32x4 get wzww => _shuffle(0xFB);
+ Float32x4 get wwxx => _shuffle(0xF);
+ Float32x4 get wwxy => _shuffle(0x4F);
+ Float32x4 get wwxz => _shuffle(0x8F);
+ Float32x4 get wwxw => _shuffle(0xCF);
+ Float32x4 get wwyx => _shuffle(0x1F);
+ Float32x4 get wwyy => _shuffle(0x5F);
+ Float32x4 get wwyz => _shuffle(0x9F);
+ Float32x4 get wwyw => _shuffle(0xDF);
+ Float32x4 get wwzx => _shuffle(0x2F);
+ Float32x4 get wwzy => _shuffle(0x6F);
+ Float32x4 get wwzz => _shuffle(0xAF);
+ Float32x4 get wwzw => _shuffle(0xEF);
+ Float32x4 get wwwx => _shuffle(0x3F);
+ Float32x4 get wwwy => _shuffle(0x7F);
+ Float32x4 get wwwz => _shuffle(0xBF);
+ Float32x4 get wwww => _shuffle(0xFF);
siva 2013/07/26 01:07:23 John, One quick question instead of having indivi
+ Float32x4 _shuffle(int mask) native "Float32x4_shuffle";
Float32x4 withX(double x) native "Float32x4_setX";
Float32x4 withY(double y) native "Float32x4_setY";
Float32x4 withZ(double z) native "Float32x4_setZ";
« no previous file with comments | « runtime/lib/simd128.cc ('k') | runtime/vm/bootstrap_natives.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698