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

Unified Diff: sdk/lib/typed_data/dart2js/typed_data_dart2js.dart

Issue 24240020: Cleanup bit casting methods between SIMD types (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 3 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
Index: sdk/lib/typed_data/dart2js/typed_data_dart2js.dart
diff --git a/sdk/lib/typed_data/dart2js/typed_data_dart2js.dart b/sdk/lib/typed_data/dart2js/typed_data_dart2js.dart
index f04e9183c02299fe947cd6db5d6b569bd12c780e..c6d34c3f8d0ff8061277e358d3aca4175454916b 100644
--- a/sdk/lib/typed_data/dart2js/typed_data_dart2js.dart
+++ b/sdk/lib/typed_data/dart2js/typed_data_dart2js.dart
@@ -811,6 +811,14 @@ class Float32x4 {
_storage[3] = v;
}
Float32x4.zero();
+ /// Returns a bit-wise copy of [x] as a Float32x4.
+ Float32x4.fromUint32x4Bits(Uint32x4 x) {
+ var view = new Float32List.view(x._storage.buffer);
+ _storage[0] = view[0];
+ _storage[1] = view[1];
+ _storage[2] = view[2];
+ _storage[3] = view[3];
+ }
/// Addition operator.
Float32x4 operator+(Float32x4 other) {
@@ -1399,12 +1407,6 @@ class Float32x4 {
double _w = Math.sqrt(1.0 / _storage[3]);
return new Float32x4(_x, _y, _z, _w);
}
-
- /// Returns a bit-wise copy of [this] as a [Uint32x4].
- Uint32x4 toUint32x4() {
- var view = new Uint32List.view(_storage.buffer);
- return new Uint32x4(view[0], view[1], view[2], view[3]);
- }
}
@@ -1425,6 +1427,15 @@ class Uint32x4 {
_storage[3] = w == true ? 0xFFFFFFFF : 0x0;
}
+ /// Returns a bit-wise copy of [x] as a Uint32x4.
+ Uint32x4.fromFloat32x4Bits(Float32x4 x) {
+ var view = new Uint32List.view(x._storage.buffer);
+ _storage[0] = view[0];
+ _storage[1] = view[1];
+ _storage[2] = view[2];
+ _storage[3] = view[3];
+ }
+
/// The bit-wise or operator.
Uint32x4 operator|(Uint32x4 other) {
int _x = _storage[0] | other._storage[0];
@@ -1599,10 +1610,4 @@ class Uint32x4 {
rView[3] = _w;
return r;
}
-
- /// Returns a bit-wise copy of [this] as a [Float32x4].
- Float32x4 toFloat32x4() {
- var view = new Float32List.view(_storage.buffer);
- return new Float32x4(view[0], view[1], view[2], view[3]);
- }
}

Powered by Google App Engine
This is Rietveld 408576698