WebAssembly / simd

Branch of the spec repo scoped to discussion of SIMD in WebAssembly
Other
527 stars 43 forks source link

Comparison instructions should return -1 in lanes #493

Closed ngzhian closed 3 years ago

ngzhian commented 3 years ago

SIMD comparisons return -1 (all bits set) in the lanes. Currently as specified, they return 1 (since we use the numeric comparison). We fix this by extracting these instructions (virelop and vfrelop) into vrelop, and in the execution, sign extend them from i1 to iX (which treats the 1-bit integer "1" as -1).

Drive-by fix for exec-vbinop, some typos in the execution semantics.

Fixed #441.