dheaton-arm commented on issue #3361:
Not sure what's causing the test failures as I can't seem to reproduce that locally (though that's using Ubuntu)...
afonso360 commented on issue #3361:
This is what I see on CI.
Caused by: 0: Cranelift codegen error 1: Verifier errors 2: - inst2 (v0 = load.b8x16 v4): has an invalid controlling type b8x16
At a first glance i suspect it might be either #3306 or #3341.
I can investigate this a bit better later, but if it is #3306 it might be better to just rebase, if it is #3341 its a bit more complicated, since the solution on #3341 is wrong, and I am working on the correct solution using
bmask
, but its going to take a while...
afonso360 edited a comment on issue #3361:
This is what I see on CI.
Caused by: 0: Cranelift codegen error 1: Verifier errors 2: - inst2 (v0 = load.b8x16 v4): has an invalid controlling type b8x16
At a first glance i suspect it might be either #3306 or #3341.
I can investigate this a bit better later, but if it is #3306 we might be able to solve this with a rebase, if it is #3341 its a bit more complicated, since the solution on #3341 is wrong, and I am working on the correct solution using
bmask
, but its going to take a while...
afonso360 edited a comment on issue #3361:
This is what I see on CI.
Caused by: 0: Cranelift codegen error 1: Verifier errors 2: - inst2 (v0 = load.b8x16 v4): has an invalid controlling type b8x16
At a first glance i suspect it might be a trampoline compile failure, either #3306 or #3341.
I can investigate this a bit better later, but if it is #3306 we might be able to solve this with a rebase, if it is #3341 its a bit more complicated, since the solution on #3341 is wrong, and I am working on the correct solution using
bmask
, but its going to take a while...
afonso360 commented on issue #3361:
Its not a trampoline compile failure.
%vselect_p_i8x16
is failing the verifier after legalization. This is what comes out after the legalization pass (but before running the verifier).function %vselect_p_i8x16(i64 ptr [%rcx], i64 ptr [%rdx], i64 ptr [%r8]) -> i8x16 [%xmm0] windows_fastcall { block0(v4: i64, v5: i64, v6: i64): [DynRexOp2fld#410] v0 = load.b8x16 v4 [DynRexOp2fld#410] v1 = load.i8x16 v5 [DynRexOp2fld#410] v2 = load.i8x16 v6 [DynRexMp3blend#910] v3 = vselect v0, v1, v2 [Op1ret#c3] return v3 }
I'm not too familiar with the legalizer to be able to tell anything else.
afonso360 edited a comment on issue #3361:
Its not a trampoline compile failure.
%vselect_p_i8x16
is failing the verifier after legalization. This is what comes out after the legalization pass (but before running the verifier).function %vselect_p_i8x16(i64 ptr [%rcx], i64 ptr [%rdx], i64 ptr [%r8]) -> i8x16 [%xmm0] windows_fastcall { block0(v4: i64, v5: i64, v6: i64): [DynRexOp2fld#410] v0 = load.b8x16 v4 [DynRexOp2fld#410] v1 = load.i8x16 v5 [DynRexOp2fld#410] v2 = load.i8x16 v6 [DynRexMp3blend#910] v3 = vselect v0, v1, v2 [Op1ret#c3] return v3 }
I'm not too familiar with the legalizer to be able to tell anything else. This is weird to me because in #3306 we have tests receiving simd bool args, which don't get turned into load's, otherwise they would fail too.
afonso360 edited a comment on issue #3361:
Its not a trampoline compile failure.
%vselect_p_i8x16
is failing the verifier after legalization. This is what comes out after the legalization pass (but before running the verifier).function %vselect_p_i8x16(i64 ptr [%rcx], i64 ptr [%rdx], i64 ptr [%r8]) -> i8x16 [%xmm0] windows_fastcall { block0(v4: i64, v5: i64, v6: i64): [DynRexOp2fld#410] v0 = load.b8x16 v4 [DynRexOp2fld#410] v1 = load.i8x16 v5 [DynRexOp2fld#410] v2 = load.i8x16 v6 [DynRexMp3blend#910] v3 = vselect v0, v1, v2 [Op1ret#c3] return v3 }
I'm not too familiar with the legalizer to be able to tell anything else. This is weird to me because in #3306 we have tests receiving simd bool args, which don't get turned into load's, otherwise they would fail too. Is there something special about
vselect
?
afonso360 commented on issue #3361:
It looks like this is only failing on the legacy backend. The test files pass if we remove the
target x86_64 legacy haswell
line.Since bytecodealliance/rfcs#12 is approved, I think it would be ok if we disabled this test file for the legacy backend. Or we could wait a few more days until the FCP window is closed. @cfallin suggestions?
cfallin commented on issue #3361:
Since bytecodealliance/rfcs#12 is approved, I think it would be ok if we disabled this test file for the legacy backend. Or we could wait a few more days until the FCP window is closed. @cfallin suggestions?
Yes, I agree, let's just exclude the old backend from this test.
Last updated: Dec 23 2024 at 13:07 UTC