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

Side by Side Diff: sdk/lib/scalarlist/byte_arrays.dart

Issue 12303013: Simd128Float32, Simd128Mask, and Simd128Float32List additions for dart:scalarlist (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Fix strict aliasing warning Created 7 years, 10 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « runtime/vm/symbols.h ('k') | sdk/lib/scalarlist/scalarlist.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 part of dart.scalarlist; 5 part of dart.scalarlist;
6 6
7 /** 7 /**
8 * A random-access sequence of bytes that also provides random access to 8 * A random-access sequence of bytes that also provides random access to
9 * the fixed-width integers and floating point numbers represented by 9 * the fixed-width integers and floating point numbers represented by
10 * those bytes. Byte arrays may be used to pack and unpack data from 10 * those bytes. Byte arrays may be used to pack and unpack data from
(...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after
262 * 262 *
263 * Throws [RangeError] if [byteOffset] is negative, or 263 * Throws [RangeError] if [byteOffset] is negative, or
264 * `byteOffset + 8` is greater than the length of this byte array. 264 * `byteOffset + 8` is greater than the length of this byte array.
265 * 265 *
266 * Throws [ArgumentError] if [value] is negative or 266 * Throws [ArgumentError] if [value] is negative or
267 * greater than 2<sup>64 - 1. 267 * greater than 2<sup>64 - 1.
268 */ 268 */
269 int setUint64(int byteOffset, int value); 269 int setUint64(int byteOffset, int value);
270 270
271 /** 271 /**
272 * Returns the Float32x4 number represented by the 16 bytes at
273 * the specified [byteOffset] in this byte array.
274 *
275 * Throws [RangeError] if [byteOffset] is negative, or
276 * `byteOffset + 16` is greater than the length of this byte array.
277 */
278 Float32x4 getFloat32x4(int byteOffset);
279
280 /**
281 * Sets the sixteen bytes starting at the specified [byteOffset] in this
282 * byte array to the Float32x4 representation of the specified [value].
283 *
284 *
285 * Returns `byteOffset + 16`, which is the offset of the first byte in the
286 * array after the last byte that was set by this call. This return value can
287 * be passed as the [byteOffset] parameter to a subsequent `setXxx` call.
288 *
289 * Throws [RangeError] if [byteOffset] is negative, or
290 * `byteOffset + 16` is greater than the length of this byte array.
291 */
292 int setFloat32x4(int byteOffset, Float32x4 value);
293
294
295 /**
272 * Returns the floating point number represented by the four bytes at 296 * Returns the floating point number represented by the four bytes at
273 * the specified [byteOffset] in this byte array, in IEEE 754 297 * the specified [byteOffset] in this byte array, in IEEE 754
274 * single-precision binary floating-point format (binary32). 298 * single-precision binary floating-point format (binary32).
275 * 299 *
276 * Throws [RangeError] if [byteOffset] is negative, or 300 * Throws [RangeError] if [byteOffset] is negative, or
277 * `byteOffset + 4` is greater than the length of this byte array. 301 * `byteOffset + 4` is greater than the length of this byte array.
278 */ 302 */
279 double getFloat32(int byteOffset); 303 double getFloat32(int byteOffset);
280 304
281 /** 305 /**
(...skipping 413 matching lines...) Expand 10 before | Expand all | Expand 10 after
695 * is a view of another byte array, this constructor will throw 719 * is a view of another byte array, this constructor will throw
696 * [ArgumentError] if the implicit starting position in the 720 * [ArgumentError] if the implicit starting position in the
697 * "ultimately backing" byte array is not divisible by 8. In plain terms, 721 * "ultimately backing" byte array is not divisible by 8. In plain terms,
698 * this constructor throws [ArgumentError] if the specified 722 * this constructor throws [ArgumentError] if the specified
699 * region does not contain an integral number of "float64s," or if it 723 * region does not contain an integral number of "float64s," or if it
700 * is not "float64-aligned." 724 * is not "float64-aligned."
701 */ 725 */
702 external factory Float64List.view(ByteArray array, 726 external factory Float64List.view(ByteArray array,
703 [int start = 0, int length]); 727 [int start = 0, int length]);
704 } 728 }
OLDNEW
« no previous file with comments | « runtime/vm/symbols.h ('k') | sdk/lib/scalarlist/scalarlist.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698