[wasm-simd] Expect fused results on Liftoff

FMA tests that are running on Liftoff can use fused results, since the
tests will fall back to TurboFan.

Bug: v8:9415
Change-Id: I02edea5ce1447263f7bc7574573418b0055aef8f
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2063202
Reviewed-by: Deepti Gandluri <gdeepti@chromium.org>
Commit-Queue: Zhi An Ng <zhin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#66438}
This commit is contained in:
Ng Zhi An 2020-02-21 02:57:29 +00:00 committed by Commit Bot
parent ff89c6bc6f
commit f9dc259a2d

View File

@ -376,12 +376,14 @@ static constexpr Vector<const FMOperation<T>> qfms_vector() {
return ArrayVector(qfms_array<T>);
}
// Fused results only when fma3 feature is enabled, and running on TurboFan.
// Fused results only when fma3 feature is enabled, and running on TurboFan or
// Liftoff (which can fall back to TurboFan if FMA is not implemented).
bool ExpectFused(ExecutionTier tier) {
#ifdef V8_TARGET_ARCH_X64
return CpuFeatures::IsSupported(FMA3) && (tier == ExecutionTier::kTurbofan);
return CpuFeatures::IsSupported(FMA3) &&
(tier == ExecutionTier::kTurbofan || tier == ExecutionTier::kLiftoff);
#else
return (tier == ExecutionTier::kTurbofan);
return (tier == ExecutionTier::kTurbofan || tier == ExecutionTier::kLiftoff);
#endif
}
#endif // V8_TARGET_ARCH_X64 || V8_TARGET_ARCH_ARM64