Stream: git-wasmtime

Topic: wasmtime / issue #4791 Cranelift: x64 backend is missing ...


view this post on Zulip Wasmtime GitHub notifications bot (Aug 26 2022 at 20:44):

elliottt labeled issue #4791:

.clif Test Case

function %f1(i64x2, i64x2) -> i32x4 {
block0(v0: i64x2, v1: i64x2):
  v2 = uunarrow v0, v1
  return v2
}

Steps to Reproduce

Compile the example clif, targeting x86_64.

Expected Results

Code would be generated.

Actual Results

A panic is generated, because we currently only support lowering this operation in the context of a fcvt_to_uint_sat and zero input: the following program will compile:

function %f1(f64x2) -> i32x4 {
block0(v0: f64x2):
  v1 = fcvt_to_uint_sat.i64x2 v0
  v2 = vconst.i64x2 [0 0]
  v3 = uunarrow v1, v2
  return v3
}

Versions and Environment

Cranelift version or commit: c1f9736938ad79354384cb6ab339a2efbdecb993

Operating system: Linux

Architecture: x86_64

view this post on Zulip Wasmtime GitHub notifications bot (Aug 26 2022 at 20:44):

elliottt labeled issue #4791:

.clif Test Case

function %f1(i64x2, i64x2) -> i32x4 {
block0(v0: i64x2, v1: i64x2):
  v2 = uunarrow v0, v1
  return v2
}

Steps to Reproduce

Compile the example clif, targeting x86_64.

Expected Results

Code would be generated.

Actual Results

A panic is generated, because we currently only support lowering this operation in the context of a fcvt_to_uint_sat and zero input: the following program will compile:

function %f1(f64x2) -> i32x4 {
block0(v0: f64x2):
  v1 = fcvt_to_uint_sat.i64x2 v0
  v2 = vconst.i64x2 [0 0]
  v3 = uunarrow v1, v2
  return v3
}

Versions and Environment

Cranelift version or commit: c1f9736938ad79354384cb6ab339a2efbdecb993

Operating system: Linux

Architecture: x86_64

view this post on Zulip Wasmtime GitHub notifications bot (Aug 26 2022 at 20:44):

elliottt opened issue #4791:

.clif Test Case

function %f1(i64x2, i64x2) -> i32x4 {
block0(v0: i64x2, v1: i64x2):
  v2 = uunarrow v0, v1
  return v2
}

Steps to Reproduce

Compile the example clif, targeting x86_64.

Expected Results

Code would be generated.

Actual Results

A panic is generated, because we currently only support lowering this operation in the context of a fcvt_to_uint_sat and zero input: the following program will compile:

function %f1(f64x2) -> i32x4 {
block0(v0: f64x2):
  v1 = fcvt_to_uint_sat.i64x2 v0
  v2 = vconst.i64x2 [0 0]
  v3 = uunarrow v1, v2
  return v3
}

Versions and Environment

Cranelift version or commit: c1f9736938ad79354384cb6ab339a2efbdecb993

Operating system: Linux

Architecture: x86_64

view this post on Zulip Wasmtime GitHub notifications bot (Aug 26 2022 at 20:47):

elliottt edited issue #4791:

.clif Test Case

function %f1(i64x2, i64x2) -> i32x4 {
block0(v0: i64x2, v1: i64x2):
  v2 = uunarrow v0, v1
  return v2
}

Steps to Reproduce

Compile the example clif, targeting x86_64.

Expected Results

Code would be generated.

Actual Results

A panic is generated, because we currently only support lowering this operation in the context of a fcvt_to_uint_sat and zero input: the following program will compile:

function %f1(f64x2) -> i32x4 {
block0(v0: f64x2):
  v1 = fcvt_to_uint_sat.i64x2 v0
  v2 = vconst.i64x2 [0 0]
  v3 = uunarrow v1, v2
  return v3
}

https://github.com/bytecodealliance/wasmtime/blob/ca6d648e37c80cb13e5027cc746ec0d2e4bd64d1/cranelift/codegen/src/isa/x64/lower.rs#L619

Versions and Environment

Cranelift version or commit: c1f9736938ad79354384cb6ab339a2efbdecb993

Operating system: Linux

Architecture: x86_64

view this post on Zulip Wasmtime GitHub notifications bot (Aug 26 2022 at 20:48):

elliottt edited issue #4791:

.clif Test Case

function %f1(i64x2, i64x2) -> i32x4 {
block0(v0: i64x2, v1: i64x2):
  v2 = uunarrow v0, v1
  return v2
}

Steps to Reproduce

Compile the example clif, targeting x86_64.

Expected Results

Code would be generated.

Actual Results

A panic is generated, because we currently only support lowering this operation in the context of a fcvt_to_uint_sat and zero input: the following program will compile:

function %f1(f64x2) -> i32x4 {
block0(v0: f64x2):
  v1 = fcvt_to_uint_sat.i64x2 v0
  v2 = vconst.i64x2 [0 0]
  v3 = uunarrow v1, v2
  return v3
}

https://github.com/bytecodealliance/wasmtime/blob/ca6d648e37c80cb13e5027cc746ec0d2e4bd64d1/cranelift/codegen/src/isa/x64/lower.rs#L619

Versions and Environment

Cranelift version or commit: ca6d648e37c80cb13e5027cc746ec0d2e4bd64d1

Operating system: Linux

Architecture: x86_64

view this post on Zulip Wasmtime GitHub notifications bot (Aug 26 2022 at 20:52):

elliottt edited issue #4791:

.clif Test Case

function %f1(i64x2, i64x2) -> i32x4 {
block0(v0: i64x2, v1: i64x2):
  v2 = uunarrow v0, v1
  return v2
}

Steps to Reproduce

Compile the example clif, targeting x86_64.

Expected Results

Code would be generated.

Actual Results

A panic is generated, because we currently only support lowering this operation in the context of a fcvt_to_uint_sat and zero input: the following program will compile:

function %f1(f64x2) -> i32x4 {
block0(v0: f64x2):
  v1 = fcvt_to_uint_sat.i64x2 v0
  v2 = vconst.i64x2 [0 0]
  v3 = uunarrow v1, v2
  return v3
}

https://github.com/bytecodealliance/wasmtime/blob/ca6d648e37c80cb13e5027cc746ec0d2e4bd64d1/cranelift/codegen/src/isa/x64/lower.rs#L619

Versions and Environment

Cranelift version or commit: ca6d648e37c80cb13e5027cc746ec0d2e4bd64d1

Operating system: Linux

Architecture: x86_64

Extra Info

This is a similar issue to #4734.

view this post on Zulip Wasmtime GitHub notifications bot (Sep 26 2022 at 13:04):

akirilov-arm labeled issue #4791:

.clif Test Case

function %f1(i64x2, i64x2) -> i32x4 {
block0(v0: i64x2, v1: i64x2):
  v2 = uunarrow v0, v1
  return v2
}

Steps to Reproduce

Compile the example clif, targeting x86_64.

Expected Results

Code would be generated.

Actual Results

A panic is generated, because we currently only support lowering this operation in the context of a fcvt_to_uint_sat and zero input: the following program will compile:

function %f1(f64x2) -> i32x4 {
block0(v0: f64x2):
  v1 = fcvt_to_uint_sat.i64x2 v0
  v2 = vconst.i64x2 [0 0]
  v3 = uunarrow v1, v2
  return v3
}

https://github.com/bytecodealliance/wasmtime/blob/ca6d648e37c80cb13e5027cc746ec0d2e4bd64d1/cranelift/codegen/src/isa/x64/lower.rs#L619

Versions and Environment

Cranelift version or commit: ca6d648e37c80cb13e5027cc746ec0d2e4bd64d1

Operating system: Linux

Architecture: x86_64

Extra Info

This is a similar issue to #4734.


Last updated: Dec 23 2024 at 12:05 UTC