Remove FPR32; fixes #1303
Until #1306 is resolved (some spilling/regalloc issue with larger FPR register banks), this removes FPR32 support. Only Wasm's `i64x2.mul` was using this register class and that instruction is predicated on AVX512 support; for the time being, that instruction will have to make do with the 16 FPR registers.
This commit is contained in:
@@ -166,14 +166,11 @@ impl Compiler {
|
||||
if trampolines.contains_key(&index) {
|
||||
continue;
|
||||
}
|
||||
// FIXME(#1303) we should be generating a trampoline for all
|
||||
// FIXME(#1322) we should be generating a trampoline for all
|
||||
// functions in a module, not just those with less than 40
|
||||
// arguments. Currently though cranelift dies in spec tests when one
|
||||
// function has 100 arguments. This looks to be a cranelift bug, so
|
||||
// let's work around it for now by skipping generating a trampoline
|
||||
// for that massive function. The trampoline isn't actually needed
|
||||
// at this time, and we'll hopefully get the cranelift bug fixed
|
||||
// soon enough to remove this condition.
|
||||
// arguments. Currently there is no relocation support for
|
||||
// trampoline compilation; when that is added this check can
|
||||
// go away.
|
||||
if sig.params.len() > 40 {
|
||||
continue;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user