-
| 
         Is there any difference in effect of the two instructions i64.extend32_s and i64.extend_i32_s or are they just dublicates? I have look at the documentation document for both versions and 2 and as far I can see they do the exact same operation (page 63 and 73) version 1.  | 
  
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 1 reply
-
| 
         The former has type i64 → i64, the latter type i32 → i64. So they differ in how the operand is represented. That said, I agree that something seems to be amiss in the specification – i64.extend32_s should extend the lower half of its operand, but the current definition of iextend fails to filter out the other bits. I think it should be  | 
  
Beta Was this translation helpful? Give feedback.
-
| 
         See #1696.  | 
  
Beta Was this translation helpful? Give feedback.
The former has type i64 → i64, the latter type i32 → i64. So they differ in how the operand is represented.
That said, I agree that something seems to be amiss in the specification – i64.extend32_s should extend the lower half of its operand, but the current definition of iextend fails to filter out the other bits. I think it should be