@@ -1836,31 +1836,31 @@ Most other vector instructions are defined in terms of numeric operators that ar
18361836
183718371. Assert: due to :ref: `validation <valid-vec-replace_lane >`, :math: `x < \dim (\shape )`.
18381838
1839- 2. Let :math: `t_ 1 ` be the type :math: `\unpacked (\shape )`.
1839+ 2. Let :math: `t_ 2 ` be the type :math: `\unpacked (\shape )`.
18401840
184118413. Assert: due to :ref: `validation <valid-vec-replace_lane >`, a value of :ref: `value type <syntax-valtype >` :math: `t_1 ` is on the top of the stack.
18421842
1843- 4. Pop the value :math: `t_ 1 .\CONST ~c_ 1 ` from the stack.
1843+ 4. Pop the value :math: `t_ 2 .\CONST ~c_ 2 ` from the stack.
18441844
184518455. Assert: due to :ref: `validation <valid-vec-replace_lane >`, a value of :ref: `value type <syntax-valtype >` |V128 | is on the top of the stack.
18461846
1847- 6. Pop the value :math: `\V128 .\VCONST ~c_ 2 ` from the stack.
1847+ 6. Pop the value :math: `\V128 .\VCONST ~c_ 1 ` from the stack.
18481848
1849- 7. Let :math: `i^\ast ` be the result of computing :math: `\lanes _{\shape }(c_ 2 )`.
1849+ 7. Let :math: `i^\ast ` be the result of computing :math: `\lanes _{\shape }(c_ 1 )`.
18501850
1851- 8. Let :math: `c` be the result of computing :math: `\lanes ^{-1 }_{\shape }(i^\ast \with [x] = c_ 1 )`.
1851+ 8. Let :math: `c` be the result of computing :math: `\lanes ^{-1 }_{\shape }(i^\ast \with [x] = c_ 2 )`.
18521852
185318539. Push :math: `\V128 .\VCONST ~c` on the stack.
18541854
18551855.. math ::
18561856 \begin {array}{l}
18571857 \begin {array}{lcl@{\qquad }l}
1858- (t_ 1 \ K {.}\CONST ~c_1 )~(\V 128 \ K {.}\VCONST ~c_2 )~(\shape\K {.}\REPLACELANE ~x) &\stepto & (\V128 \K {.}\VCONST ~c)
1858+ (\V 128 \ K {.}\VCONST ~c_1 )~(t_ 2 \ K {.}\CONST ~c_2 )~(\shape\K {.}\REPLACELANE ~x) &\stepto & (\V128 \K {.}\VCONST ~c)
18591859 \end {array}
18601860 \\ \qquad
18611861 \begin {array}[t]{@{}r@{~}l@{}}
1862- (\iff & i^\ast = \lanes _{\shape }(c_ 2 ) \\
1863- \wedge & c = \lanes ^{-1 }_{\shape }(i^\ast \with [x] = c_ 1 ))
1862+ (\iff & i^\ast = \lanes _{\shape }(c_ 1 ) \\
1863+ \wedge & c = \lanes ^{-1 }_{\shape }(i^\ast \with [x] = c_ 2 ))
18641864 \end {array}
18651865 \end {array}
18661866
@@ -1992,9 +1992,9 @@ Most other vector instructions are defined in terms of numeric operators that ar
19921992
199319931. Assert: due to :ref: `validation <valid-vtestop >`, a value of :ref: `value type <syntax-valtype >` |V128 | is on the top of the stack.
19941994
1995- 2. Pop the value :math: `\V128 .\VCONST ~c_ 1 ` from the stack.
1995+ 2. Pop the value :math: `\V128 .\VCONST ~c ` from the stack.
19961996
1997- 3. Let :math: `i_1 ^\ast ` be the result of computing :math: `\lanes _{\shape }(c_ 1 )`.
1997+ 3. Let :math: `i_1 ^\ast ` be the result of computing :math: `\lanes _{\shape }(c )`.
19981998
199919994. Let :math: `i` be the result of computing :math: `\tobool (\bigwedge (i_1 \neq 0 )^\ast )`.
20002000
@@ -2004,7 +2004,7 @@ Most other vector instructions are defined in terms of numeric operators that ar
20042004.. math ::
20052005 \begin {array}{l}
20062006 \begin {array}{lcl@{\qquad }l}
2007- (\V128 \K {.}\VCONST ~c_ 1 )~\shape\K {.}\ALLTRUE &\stepto & (\I32 \K {.}\CONST ~i)
2007+ (\V128 \K {.}\VCONST ~c )~\shape\K {.}\ALLTRUE &\stepto & (\I32 \K {.}\CONST ~i)
20082008 \end {array}
20092009 \\ \qquad
20102010 \begin {array}[t]{@{}r@{~}l@{}}
@@ -2021,7 +2021,7 @@ Most other vector instructions are defined in terms of numeric operators that ar
20212021
202220221. Assert: due to :ref: `validation <valid-vec-bitmask >`, a value of :ref: `value type <syntax-valtype >` |V128 | is on the top of the stack.
20232023
2024- 2. Pop the value :math: `\V128 .\VCONST ~c_ 1 ` from the stack.
2024+ 2. Pop the value :math: `\V128 .\VCONST ~c ` from the stack.
20252025
202620263. Let :math: `i_1 ^N` be the result of computing :math: `\lanes _{t\K {x}N}(c)`.
20272027
@@ -2031,14 +2031,14 @@ Most other vector instructions are defined in terms of numeric operators that ar
20312031
203220326. Let :math: `j^\ast ` be the concatenation of the two sequences :math: `i_2 ^N` and :math: `0 ^{32 -N}`.
20332033
2034- 7. Let :math: `c ` be the result of computing :math: `\ibits _{32 }^{-1 }(j^\ast )`.
2034+ 7. Let :math: `i ` be the result of computing :math: `\ibits _{32 }^{-1 }(j^\ast )`.
20352035
2036- 8. Push the value :math: `\I32 .\CONST ~c ` onto the stack.
2036+ 8. Push the value :math: `\I32 .\CONST ~i ` onto the stack.
20372037
20382038.. math ::
20392039 \begin {array}{lcl@{\qquad }l}
2040- (\V128 \K {.}\VCONST ~c_ 1 )~t\K {x}N\K {.}\BITMASK &\stepto & (\I32 \K {.}\CONST ~c )
2041- & (\iff c = \ibits _{32 }^{-1 }(\ilts _{|t|}(\lanes _{t\K {x}N}(c), 0 ^N)))
2040+ (\V128 \K {.}\VCONST ~c )~t\K {x}N\K {.}\BITMASK &\stepto & (\I32 \K {.}\CONST ~i )
2041+ & (\iff i = \ibits _{32 }^{-1 }(\ilts _{|t|}(\lanes _{t\K {x}N}(c), 0 ^N)))
20422042 \\
20432043 \end {array}
20442044
@@ -2160,8 +2160,8 @@ where:
21602160 \end {array}
21612161
21622162
2163- :math: `t_2 \K {x}N\K {.}\vcvtop\K {\_ }t_1 \K {x}M\K {\_ }\sx\K {\_zero}`
2164- ...............................................................
2163+ :math: `t_2 \K {x}N\K {.}\vcvtop\K {\_ }t_1 \K {x}M\K {\_ }\sx ^? \K {\_zero}`
2164+ .................................................................
21652165
216621661. Assert: due to :ref: `syntax <syntax-instr-vec >`, :math: `N = 2 \cdot M`.
21672167
@@ -2171,7 +2171,7 @@ where:
21712171
217221724. Let :math: `i^\ast ` be the result of computing :math: `\lanes _{t_1 \K {x}M}(c_1 )`.
21732173
2174- 5. Let :math: `j^\ast ` be the result of computing :math: `\vcvtop ^{\sx }_{|t_1 |,|t_2 |}(i^\ast )`.
2174+ 5. Let :math: `j^\ast ` be the result of computing :math: `\vcvtop ^{\sx ^? }_{|t_1 |,|t_2 |}(i^\ast )`.
21752175
217621766. Let :math: `k^\ast ` be the concatenation of the two sequences :math: `j^\ast ` and :math: `0 ^M`.
21772177
@@ -2182,11 +2182,11 @@ where:
21822182.. math ::
21832183 \begin {array}{l}
21842184 \begin {array}{lcl@{\qquad }l}
2185- (\V128 \K {.}\VCONST ~c_1 )~t_2 \K {x}N\K {.}\vcvtop\K {\_ }t_1 \K {x}M\K {\_ }\sx\K {\_zero} &\stepto & (\V128 \K {.}\VCONST ~c) \\
2185+ (\V128 \K {.}\VCONST ~c_1 )~t_2 \K {x}N\K {.}\vcvtop\K {\_ }t_1 \K {x}M\K {\_ }\sx ^? \K {\_zero} &\stepto & (\V128 \K {.}\VCONST ~c) \\
21862186 \end {array}
21872187 \\ \qquad
21882188 \begin {array}[t]{@{}r@{~}l@{}}
2189- (\iff & c = \lanes ^{-1 }_{t_2 \K {x}N}(\vcvtop ^{\sx }_{|t_1 |,|t_2 |}(\lanes _{t_1 \K {x}M}(c_1 ))~0 ^M))
2189+ (\iff & c = \lanes ^{-1 }_{t_2 \K {x}N}(\vcvtop ^{\sx ^? }_{|t_1 |,|t_2 |}(\lanes _{t_1 \K {x}M}(c_1 ))~0 ^M))
21902190 \end {array}
21912191 \end {array}
21922192
@@ -2265,7 +2265,7 @@ where:
22652265
2266226610. Let :math: `k_2 ^\ast ` be the result of computing :math: `\extend ^{\sx }_{|t_1 |,|t_2 |}(j_2 ^\ast )`.
22672267
2268- 11. Let :math: `k^\ast ` be the result of computing :math: `\imul _{t_2 \K {x}N }(k_1 ^\ast , k_2 ^\ast )`.
2268+ 11. Let :math: `k^\ast ` be the result of computing :math: `\imul _{| t_2 | }(k_1 ^\ast , k_2 ^\ast )`.
22692269
2270227012. Let :math: `c` be the result of computing :math: `\lanes ^{-1 }_{t_2 \K {x}N}(k^\ast )`.
22712271
@@ -2279,7 +2279,7 @@ where:
22792279 \begin {array}[t]{@{}r@{~}l@{}}
22802280 (\iff & i^\ast = \lanes _{t_1 \K {x}M}(c_1 )[\half (0 , N) \slice N] \\
22812281 \wedge & j^\ast = \lanes _{t_1 \K {x}M}(c_2 )[\half (0 , N) \slice N] \\
2282- \wedge & c = \lanes ^{-1 }_{t_2 \K {x}N}(\imul _{t_2 \K {x}N }(\extend ^{\sx }_{|t_1 |,|t_2 |}(i^\ast ), \extend ^{\sx }_{|t_1 |,|t_2 |}(j^\ast ))))
2282+ \wedge & c = \lanes ^{-1 }_{t_2 \K {x}N}(\imul _{| t_2 | }(\extend ^{\sx }_{|t_1 |,|t_2 |}(i^\ast ), \extend ^{\sx }_{|t_1 |,|t_2 |}(j^\ast ))))
22832283 \end {array}
22842284
22852285 where:
@@ -2306,7 +2306,7 @@ where:
23062306
230723075. Let :math: `(j_1 ~j_2 )^\ast ` be the result of computing :math: `\extend ^{\sx }_{|t_1 |,|t_2 |}(i^\ast )`.
23082308
2309- 6. Let :math: `k^\ast ` be the result of computing :math: `\iadd _{N }(j_1 , j_2 )^\ast `.
2309+ 6. Let :math: `k^\ast ` be the result of computing :math: `\iadd _{|t_ 2 | }(j_1 , j_2 )^\ast `.
23102310
231123117. Let :math: `c` be the result of computing :math: `\lanes ^{-1 }_{t_2 \K {x}N}(k^\ast )`.
23122312
@@ -2320,7 +2320,7 @@ where:
23202320 \\ \qquad
23212321 \begin {array}[t]{@{}r@{~}l@{}}
23222322 (\iff & (i_1 ~i_2 )^\ast = \extend ^{\sx }_{|t_1 |,|t_2 |}(\lanes _{t_1 \K {x}M}(c_1 )) \\
2323- \wedge & j^\ast = \iadd _{N }(i_1 , i_2 )^\ast \\
2323+ \wedge & j^\ast = \iadd _{|t_ 2 | }(i_1 , i_2 )^\ast \\
23242324 \wedge & c = \lanes ^{-1 }_{t_2 \K {x}N}(j^\ast ))
23252325 \end {array}
23262326 \end {array}
0 commit comments