Stream: git-wasmtime

Topic: wasmtime / issue #1331 Cranelift verifier error related t...


view this post on Zulip Wasmtime GitHub notifications bot (May 18 2021 at 07:36):

bjorn3 commented on issue #1331:

Wasmtime has been switched over to the new backend by default in https://github.com/bytecodealliance/wasmtime/pull/2718.

view this post on Zulip Wasmtime GitHub notifications bot (Nov 19 2021 at 16:20):

alexcrichton commented on issue #1331:

I can confirm that even with the debug verifier enabled this issue is fixed, so closing.

view this post on Zulip Wasmtime GitHub notifications bot (Nov 19 2021 at 16:20):

alexcrichton closed issue #1331:

<details><summary><code>test-case.wat</code></summary>

(module
      (type (;0;) (func))
      (type (;1;) (func (param i32)))
      (type (;2;) (func (param i64)))
      (type (;3;) (func (param f32)))
      (type (;4;) (func (param f64)))
      (type (;5;) (func (result i32)))
      (type (;6;) (func (param f64 i64 i32 i64 f32) (result f64)))
      (import "fuzzing-support" "log-i32" (func (;0;) (type 1)))
      (import "fuzzing-support" "log-i64" (func (;1;) (type 2)))
      (import "fuzzing-support" "log-f32" (func (;2;) (type 3)))
      (import "fuzzing-support" "log-f64" (func (;3;) (type 4)))
      (func (;4;) (type 5) (result i32)
        (local i32)
        i32.const 5381
        local.set 0
        local.get 0
        i32.const 5
        i32.shl
        local.get 0
        i32.add
        i32.const 0
        i32.load8_u
        i32.xor
        local.set 0
        local.get 0
        i32.const 5
        i32.shl
        local.get 0
        i32.add
        i32.const 0
        i32.load8_u offset=1
        i32.xor
        local.set 0
        local.get 0
        i32.const 5
        i32.shl
        local.get 0
        i32.add
        i32.const 0
        i32.load8_u offset=2
        i32.xor
        local.set 0
        local.get 0
        i32.const 5
        i32.shl
        local.get 0
        i32.add
        i32.const 0
        i32.load8_u offset=3
        i32.xor
        local.set 0
        local.get 0
        i32.const 5
        i32.shl
        local.get 0
        i32.add
        i32.const 0
        i32.load8_u offset=4
        i32.xor
        local.set 0
        local.get 0
        i32.const 5
        i32.shl
        local.get 0
        i32.add
        i32.const 0
        i32.load8_u offset=5
        i32.xor
        local.set 0
        local.get 0
        i32.const 5
        i32.shl
        local.get 0
        i32.add
        i32.const 0
        i32.load8_u offset=6
        i32.xor
        local.set 0
        local.get 0
        i32.const 5
        i32.shl
        local.get 0
        i32.add
        i32.const 0
        i32.load8_u offset=7
        i32.xor
        local.set 0
        local.get 0
        i32.const 5
        i32.shl
        local.get 0
        i32.add
        i32.const 0
        i32.load8_u offset=8
        i32.xor
        local.set 0
        local.get 0
        i32.const 5
        i32.shl
        local.get 0
        i32.add
        i32.const 0
        i32.load8_u offset=9
        i32.xor
        local.set 0
        local.get 0
        i32.const 5
        i32.shl
        local.get 0
        i32.add
        i32.const 0
        i32.load8_u offset=10
        i32.xor
        local.set 0
        local.get 0
        i32.const 5
        i32.shl
        local.get 0
        i32.add
        i32.const 0
        i32.load8_u offset=11
        i32.xor
        local.set 0
        local.get 0
        i32.const 5
        i32.shl
        local.get 0
        i32.add
        i32.const 0
        i32.load8_u offset=12
        i32.xor
        local.set 0
        local.get 0
        i32.const 5
        i32.shl
        local.get 0
        i32.add
        i32.const 0
        i32.load8_u offset=13
        i32.xor
        local.set 0
        local.get 0
        i32.const 5
        i32.shl
        local.get 0
        i32.add
        i32.const 0
        i32.load8_u offset=14
        i32.xor
        local.set 0
        local.get 0
        i32.const 5
        i32.shl
        local.get 0
        i32.add
        i32.const 0
        i32.load8_u offset=15
        i32.xor
        local.set 0
        local.get 0)
      (func (;5;) (type 6) (param f64 i64 i32 i64 f32) (result f64)
        (local i32 i64 i64 f32 f64 f64)
        block  ;; label = @1
          global.get 4
          i32.eqz
          if  ;; label = @2
            f64.const 0x1.00000002p+31 (;=2147483649;)
            return
          end
          global.get 4
          i32.const 1
          i32.sub
          global.set 4
        end
        block  ;; label = @1
          loop  ;; label = @2
            block  ;; label = @3
              global.get 4
              i32.eqz
              if  ;; label = @4
                f64.const 0x1.dcp+6 (;=119;)
                return
              end
              global.get 4
              i32.const 1
              i32.sub
              global.set 4
            end
            block  ;; label = @3
              block  ;; label = @4
                loop  ;; label = @5
                  block  ;; label = @6
                    global.get 4
                    i32.eqz
                    if  ;; label = @7
                      local.get 9
                      return
                    end
                    global.get 4
                    i32.const 1
                    i32.sub
                    global.set 4
                  end
                  block  ;; label = @6
                    block  ;; label = @7
                      local.get 5
                      local.tee 2
                      local.tee 2
                      local.tee 5
                      local.tee 2
                      local.tee 5
                      local.tee 5
                      local.tee 2
                      local.tee 2
                      local.set 5
                      loop (result f32)  ;; label = @8
                        block  ;; label = @9
                          global.get 4
                          i32.eqz
                          if  ;; label = @10
                            f64.const -nan:0xfffffffffcf41 (;=NaN;)
                            return
                          end
                          global.get 4
                          i32.const 1
                          i32.sub
                          global.set 4
                        end
                        block (result f32)  ;; label = @9
                          block  ;; label = @10
                            loop (result f32)  ;; label = @11
                              block  ;; label = @12
                                global.get 4
                                i32.eqz
                                if  ;; label = @13
                                  local.get 0
                                  return
                                end
                                global.get 4
                                i32.const 1
                                i32.sub
                                global.set 4
                              end
                              block (result f32)  ;; label = @12
                                block  ;; label = @13
                                  local.get 2
                                  i32.const 15
                                  i32.and
                                  local.get 7
                                  i64.store offset=22 align=2
                                  i64.const -2
                                  local.set 6
                                end
                                loop (result i32)  ;; label = @13
                                  block  ;; label = @14
                                    global.get 4
                                    i32.eqz
                                    if  ;; label = @15
                                      f64.const 0x1.060606060606p+519 (;=1756580577739303000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000;)
                                      return
                                    end
                                    global.get 4
                                    i32.const 1
                                    i32.sub
                                    global.set 4
                                  end
                                  block (result i32)  ;; label = @14
                                    local.get 5
                                    i32.const 141
                                    local.tee 5
                                    br_if 0 (;@14;)
                                    if (result i32)  ;; label = @15
                                      local.get 5
                                    else
                                      i32.const 2097152
                                    end
                                    if  ;; label = @15
                                      i32.const 2048
                                      i32.eqz
                                      if  ;; label = @16
                                        local.get 0
                                        local.set 0
                                      else
                                        f64.const 0x1p+41 (;=2199023255552;)
                                        local.set 10
                                      end
                                      local.get 8
                                      local.set 4
                                    else
                                      i32.const 1381126738
                                      local.set 2
                                      local.get 1
                                      local.set 6
                                    end
                                    loop (result i32)  ;; label = @15
                                      block  ;; label = @16
                                        global.get 4
                                        i32.eqz
                                        if  ;; label = @17
                                          f64.const -nan:0xfffffffffffab (;=NaN;)

[message truncated]


Last updated: Dec 23 2024 at 12:05 UTC