(module
 (type $none_=>_none (func))
 (func $0
  (local $0 i32)
  (local $1 i64)
  (drop
   (i32.extend8_s
    (local.get $0)
   )
  )
  (drop
   (i32.extend16_s
    (local.get $0)
   )
  )
  (drop
   (i64.extend8_s
    (local.get $1)
   )
  )
  (drop
   (i64.extend16_s
    (local.get $1)
   )
  )
  (drop
   (i64.extend32_s
    (local.get $1)
   )
  )
 )
)

