Disabling use of FMA until I can figure out the rounding issues.

This commit is contained in:
Ben Vanik 2015-06-20 11:20:47 -07:00
parent c51050c270
commit fb591cbadb
1 changed files with 4 additions and 2 deletions

View File

@ -3911,8 +3911,10 @@ EMITTER(MUL_ADD_F64, MATCH(I<OPCODE_MUL_ADD, F64<>, F64<>, F64<>, F64<>>)) {
}; };
EMITTER(MUL_ADD_V128, MATCH(I<OPCODE_MUL_ADD, V128<>, V128<>, V128<>, V128<>>)) { EMITTER(MUL_ADD_V128, MATCH(I<OPCODE_MUL_ADD, V128<>, V128<>, V128<>, V128<>>)) {
static void Emit(X64Emitter& e, const EmitArgType& i) { static void Emit(X64Emitter& e, const EmitArgType& i) {
// FMA extension // TODO(benvanik): the vfmadd sequence produces slightly different results
if (e.IsFeatureEnabled(kX64EmitFMA)) { // than vmul+vadd and it'd be nice to know why. Until we know, it's
// disabled so tests pass.
if (false && e.IsFeatureEnabled(kX64EmitFMA)) {
if (i.dest == i.src1) { if (i.dest == i.src1) {
e.vfmadd213ps(i.dest, i.src2, i.src3); e.vfmadd213ps(i.dest, i.src2, i.src3);
} else if (i.dest == i.src2) { } else if (i.dest == i.src2) {