Merge pull request #3362 from dheaton-arm/implement-unarrow

Implement `Unarrow`, `Uunarrow`, and `Snarrow` for the interpreter
This commit is contained in:
Chris Fallin
2021-09-21 10:06:46 -07:00
committed by GitHub
9 changed files with 166 additions and 10 deletions

View File

@@ -4047,7 +4047,7 @@ pub(crate) fn define(
Combine `x` and `y` into a vector with twice the lanes but half the integer width while
saturating overflowing values to the unsigned maximum and minimum.
Note that all input lanes are considered unsigned.
Note that all input lanes are considered unsigned: any negative values will be interpreted as unsigned, overflowing and being replaced with the unsigned maximum.
The lanes will be concatenated after narrowing. For example, when `x` and `y` are `i32x4`
and `x = [x3, x2, x1, x0]` and `y = [y3, y2, y1, y0]`, then after narrowing the value