Stream: git-wasmtime

Topic: wasmtime / Issue #1743 Cranelift: bnot.b1 is illegal


view this post on Zulip Wasmtime GitHub notifications bot (May 21 2020 at 21:35):

whitequark opened Issue #1743:

While looking into another issue I minimized the following testcase, which produces invalid IR:

target x86_64

function u0:323() system_v {
block0:
    v221 = bconst.b1 false
    v222 = bconst.b1 false
    v223 = bnot v221
    v224 = band v223, v222
    trap unreachable
}
[-]                                 v223 = bnot v221
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
; error: inst2: v223 is a real GPR value defined by a ghost instruction

It seems to me that it should work but I don't understand what's the missing legalization or selection rule is in this case. @iximeow?

view this post on Zulip Wasmtime GitHub notifications bot (May 21 2020 at 21:35):

whitequark labeled Issue #1743:

While looking into another issue I minimized the following testcase, which produces invalid IR:

target x86_64

function u0:323() system_v {
block0:
    v221 = bconst.b1 false
    v222 = bconst.b1 false
    v223 = bnot v221
    v224 = band v223, v222
    trap unreachable
}
[-]                                 v223 = bnot v221
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
; error: inst2: v223 is a real GPR value defined by a ghost instruction

It seems to me that it should work but I don't understand what's the missing legalization or selection rule is in this case. @iximeow?

view this post on Zulip Wasmtime GitHub notifications bot (May 21 2020 at 21:35):

whitequark labeled Issue #1743:

While looking into another issue I minimized the following testcase, which produces invalid IR:

target x86_64

function u0:323() system_v {
block0:
    v221 = bconst.b1 false
    v222 = bconst.b1 false
    v223 = bnot v221
    v224 = band v223, v222
    trap unreachable
}
[-]                                 v223 = bnot v221
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
; error: inst2: v223 is a real GPR value defined by a ghost instruction

It seems to me that it should work but I don't understand what's the missing legalization or selection rule is in this case. @iximeow?


Last updated: Oct 23 2024 at 20:03 UTC