[spectec] SpecTec interpreter: array.new_data and array.init_data fail on arrays of v128
Los mantenedores suelen responder en 1 día
Ya se ha fusionado un pull request relacionado.
- #2293 de @rossberg — fusionado
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 78/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- wasm
- Área
- testing
Línea de trabajo
Empieza en el intérprete de SpecTec, en inv_zbytes, y compara cómo maneja los valores vectoriales con inv_cbytes, que ya deriva V128 a inv_vbytes. Ejecuta spectec specification/wasm-3.0/*.spectec --interpreter con el módulo proporcionado; el trabajo estará terminado cuando tanto array.new_data como array.init_data devuelvan los valores de lane esperados sin ArgMismatch.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
(module
(type $av (array (mut v128)))
(data $d "\00\01\02\03\04\05\06\07\08\09\0a\0b\0c\0d\0e\0f")
(func (export "new") (result i32)
(i32x4.extract_lane 3 (array.get $av (array.new_data $av $d (i32.const 0) (i32.const 1)) (i32.const 0))))
(func (export "init") (result i32)
(local $x (ref $av))
(local.set $x (array.new_default $av (i32.const 1)))
(array.init_data $av $d (local.get $x) (i32.const 0) (i32.const 0) (i32.const 1))
(i32x4.extract_lane 1 (array.get $av (local.get $x) (i32.const 0)))))
(assert_return (invoke "new") (i32.const 0x0f0e0d0c))
(assert_return (invoke "init") (i32.const 0x07060504))
The reference interpreter passes. spectec specification/wasm-3.0/*.spectec --interpreter fails both:
$ARRAY.NEW_DATA: Backend_interpreter.Exception.ArgMismatch("inv_nbytes: [V128, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]]")
array.new_data-num and array.init_data-num decode the segment with $zbytes_(zt, c). In the interpreter, inv_zbytes handles I8 and I16 and passes everything else to inv_nbytes, which has no V128 case. inv_cbytes already sends V128 to inv_vbytes; inv_zbytes needs the same case.
Tested at 340650f.
- Lenguaje dominante
- WebAssembly
- Estrellas
- 3.5k
- Forks
- 540
- Merge medio
- 23 h 36 min
- PR fusionados (30 d)
- 26
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de WebAssembly/spec
-
Dificultad 3/5 1-2 días Aptitud para principiantes 66/100
WebAssembly/spec#2302 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 53/100
WebAssembly/spec#2301 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
-
il2al: host function rules become two independent conditionals and ignore the new store `s'`Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
WebAssembly/spec#2279 · 6 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
WebAssembly/spec#2258 · 4 comentarios · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
[js-api] A mutable global import allocates a const global before LinkErrorPosiblemente ocupada @chicoxyzzy la tomó hace 18 días. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 58/100
WebAssembly/spec#2253 ·
Los mantenedores suelen responder en 1 día
Todos los issues de WebAssembly/spec
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 67/100
AIssoufi/issoufi.fr#427 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
good first issue server
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
Los mantenedores suelen responder en 1 día
-
bug priority: low
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
TMHSDigital/Free-Game-Dev-Assets#138 ·
Los mantenedores suelen responder en 1 día
-
area: ci type: test
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
schlessera/brain-kit#2769 ·
Los mantenedores suelen responder en 1 día
-
type/test
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
SaltedTan/virgil-language-server#218 ·
Los mantenedores suelen responder en 1 día