SIMD.%type%.load()

Cette fonction est expérimentale
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

La méthode statique SIMD.%type%.load() crée un nouveau type de donnée SIMD dont les valeurs des voies sont chargées à partir d'un tableau typé.

Syntaxe

SIMD.Float64x2.load(tarray, index)
SIMD.Float64x2.load1(tarray, index)

SIMD.Float32x4.load(tarray, index)
SIMD.Float32x4.load1(tarray, index)
SIMD.Float32x4.load2(tarray, index)
SIMD.Float32x4.load3(tarray, index)

SIMD.Int32x4.load(tarray, index)
SIMD.Int32x4.load1(tarray, index)
SIMD.Int32x4.load2(tarray, index)
SIMD.Int32x4.load3(tarray, index)

SIMD.Uint32x4.load(tarray, index)
SIMD.Uint32x4.load1(tarray, index)
SIMD.Uint32x4.load2(tarray, index)
SIMD.Uint32x4.load3(tarray, index) 

SIMD.Int8x16.load(tarray, index)
SIMD.Int16x8.load(tarray, index)

SIMD.Uint8x16.load(tarray, index) 
SIMD.Uint16x8.load(tarray, index)

Paramètres

tarray
Une instance d'un tableau typé. L'objet peut être une instance de :
index
Un nombre indiquant la position, l'indice à partir duquel commencer à charger le tableau typé.

Valeur de retour

Un nouveau type de donnée SIMD.

Exceptions levées

  • If index is out of range, for example SIMD.Int32x4.load(tarray, -1) or bigger than the size of tarray, a RangeError is thrown.
  • If tarray is not one of the typed array types, for example SIMD.Int32x4.load(tarray.buffer, 0) (an array buffer is not valid), a TypeError is thrown.

Description

Les méthodes SIMD load et store permettent d'interagir avec les tableaux typés. Avec load, on peut charger des tableaux typés dans des vecteurs SIMD et avec store, on peut enregistrer des données d'un type SIMD vers un tableau typé.

Il est possible de charger toutes les voies avec load(), ou seulement les voies 1, 2, 3 ou 4 avec les méthodes load1(), load2() or load3().

Exemples

Dans les exemples ci-aprèes, on utilise un Int32Array qu'on charge dans un vecteur SIMD.Int32x4.

Charger toutes les valeurs

var a = new Int32Array([1,2,3,4,5,6,7,8]);
SIMD.Int32x4.load(a, 0);
// Int32x4[1,2,3,4]

var b = new Int32Array([1,2,3,4,5,6,7,8]);
SIMD.Int32x4.load(a, 2);
// Int32x4[3,4,5,6]

Charger une seule valeur

var a = new Int32Array([1,2,3,4,5,6,7,8]);
SIMD.Int32x4.load1(a, 0);
// Int32x4[1,0,0,0]

var b = new Int32Array([1,2,3,4,5,6,7,8]);
SIMD.Int32x4.load1(a, 2);
// Int32x4[3,0,0,0]

Charger deux valeurs

var a = new Int32Array([1,2,3,4,5,6,7,8]);
SIMD.Int32x4.load2(a, 0);
// Int32x4[1,2,0,0]

var b = new Int32Array([1,2,3,4,5,6,7,8]);
SIMD.Int32x4.load2(a, 2);
// Int32x4[3,4,0,0]

Charger trois valeurs

var a = new Int32Array([1,2,3,4,5,6,7,8]);
SIMD.Int32x4.load3(a, 0);
// Int32x4[1,2,3,0]

var b = new Int32Array([1,2,3,4,5,6,7,8]);
SIMD.Int32x4.load3(a, 2);
// Int32x4[3,4,5,0]

Spécifications

Spécification État Commentaires
SIMD
La définition de 'SIMDConstructor.load' dans cette spécification.
Projet Définition initiale.

Compatibilité des navigateurs

Fonctionnalité Chrome Firefox (Gecko) Internet Explorer Opera Safari
Support simple Pas de support Nightly build Pas de support Pas de support Pas de support
Fonctionnalité Android Chrome pour Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Support simple Pas de support Pas de support Nightly build Pas de support Pas de support Pas de support

Voir aussi

Étiquettes et contributeurs liés au document

 Contributeurs à cette page : SphinxKnight
 Dernière mise à jour par : SphinxKnight,