Upgrade to regalloc2 0.1.3. (#4157)

* Upgrade to regalloc2 0.1.3.

This pulls in bytecodealliance/regalloc2#49, which slightly improves
codegen in some cases where a safepoint (for reference-typed values)
occurs in the same liverange as a register-constrained use. For
example, in bytecodealliance/wasmtime#3785, an extra move instruction
appeared and a callee-save register was used (necessitating a more
expensive prologue) because of suboptimal splitting heuristics, which
this PR fixes. The updated RA2 heuristics appear to have no measured
downsides in existing benchmarks and improve the manually-observed
codegen issue.

* Update filetests where regalloc2 improvement altered behavior with reftypes.
This commit is contained in:
Chris Fallin
2022-05-18 11:48:40 -07:00
committed by GitHub
parent ca106e9bcd
commit 02d5edc591
4 changed files with 18 additions and 22 deletions

4
Cargo.lock generated
View File

@@ -2351,9 +2351,9 @@ dependencies = [
[[package]]
name = "regalloc2"
version = "0.1.2"
version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1ec1c2e4f4b879982653d243d9561d9f49004ce15a47e9682ad1f6d53a06aac0"
checksum = "904196c12c9f55d3aea578613219f493ced8e05b3d0c6a42d11cb4142d8b4879"
dependencies = [
"fxhash",
"log",