From e4d09f3b7c625300054d6af639bbf3609a57af2a Mon Sep 17 00:00:00 2001 From: Larry Ewing Date: Wed, 25 Jan 2023 21:32:25 -0600 Subject: [PATCH 1/3] Test missing case --- src/mono/mono/mini/simd-intrinsics.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/mono/mono/mini/simd-intrinsics.c b/src/mono/mono/mini/simd-intrinsics.c index 58752308d5795e..2c360d4785321c 100644 --- a/src/mono/mono/mini/simd-intrinsics.c +++ b/src/mono/mono/mini/simd-intrinsics.c @@ -309,6 +309,9 @@ emit_simd_ins_for_binary_op (MonoCompile *cfg, MonoClass *klass, MonoMethodSigna ins = emit_simd_ins (cfg, klass, OP_XBINOP_BYSCALAR, args [0]->dreg, ins->dreg); ins->inst_c0 = OP_FDIV; return ins; + } else if ((fsig->params [0]->type == MONO_TYPE_GENERICINST) && (fsig->params [1]->type == MONO_TYPE_GENERICINST)) { + instc0 = OP_FMUL; + break; } else { return NULL; } @@ -336,6 +339,9 @@ emit_simd_ins_for_binary_op (MonoCompile *cfg, MonoClass *klass, MonoMethodSigna ins = emit_simd_ins (cfg, klass, OP_XBINOP_BYSCALAR, ins->dreg, args [1]->dreg); ins->inst_c0 = OP_FMUL; return ins; + } else if ((fsig->params [0]->type == MONO_TYPE_GENERICINST) && (fsig->params [1]->type == MONO_TYPE_GENERICINST)) { + instc0 = OP_FMUL; + break; } else { return NULL; } From e76af2fe4074c90ec94a58a5841168c24d265949 Mon Sep 17 00:00:00 2001 From: Larry Ewing Date: Wed, 25 Jan 2023 21:36:10 -0600 Subject: [PATCH 2/3] Update src/mono/mono/mini/simd-intrinsics.c --- src/mono/mono/mini/simd-intrinsics.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/mono/mono/mini/simd-intrinsics.c b/src/mono/mono/mini/simd-intrinsics.c index 2c360d4785321c..82baa140a2c13c 100644 --- a/src/mono/mono/mini/simd-intrinsics.c +++ b/src/mono/mono/mini/simd-intrinsics.c @@ -310,7 +310,6 @@ emit_simd_ins_for_binary_op (MonoCompile *cfg, MonoClass *klass, MonoMethodSigna ins->inst_c0 = OP_FDIV; return ins; } else if ((fsig->params [0]->type == MONO_TYPE_GENERICINST) && (fsig->params [1]->type == MONO_TYPE_GENERICINST)) { - instc0 = OP_FMUL; break; } else { return NULL; From f096d154bf5d95c50d1bb1cfd7c50ad671b28a74 Mon Sep 17 00:00:00 2001 From: Larry Ewing Date: Wed, 25 Jan 2023 21:36:19 -0600 Subject: [PATCH 3/3] Update src/mono/mono/mini/simd-intrinsics.c --- src/mono/mono/mini/simd-intrinsics.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/mono/mono/mini/simd-intrinsics.c b/src/mono/mono/mini/simd-intrinsics.c index 82baa140a2c13c..cad1e0756b6f69 100644 --- a/src/mono/mono/mini/simd-intrinsics.c +++ b/src/mono/mono/mini/simd-intrinsics.c @@ -310,6 +310,7 @@ emit_simd_ins_for_binary_op (MonoCompile *cfg, MonoClass *klass, MonoMethodSigna ins->inst_c0 = OP_FDIV; return ins; } else if ((fsig->params [0]->type == MONO_TYPE_GENERICINST) && (fsig->params [1]->type == MONO_TYPE_GENERICINST)) { + instc0 = OP_FDIV; break; } else { return NULL;