Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/dotnet/runtime.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatous Kozak <matouskozak@seznam.cz>2022-09-05 23:45:48 +0300
committerMatous Kozak <matouskozak@seznam.cz>2022-09-05 23:45:48 +0300
commitf6d64ce90966edfeec8de6ac789936910ef0daa9 (patch)
treefe46fc79293933f4ede2eeef84361bb77928dc10
parent49ae2c70a45e2a5c9da8b51c5d3461565e1fc36d (diff)
floor, ceiling intrinsics move check outside ifdefamd64_floor_ceil_intrinsics
-rw-r--r--src/mono/mono/mini/simd-intrinsics.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/src/mono/mono/mini/simd-intrinsics.c b/src/mono/mono/mini/simd-intrinsics.c
index afef560f606..388765ba3e0 100644
--- a/src/mono/mono/mini/simd-intrinsics.c
+++ b/src/mono/mono/mini/simd-intrinsics.c
@@ -1071,9 +1071,9 @@ emit_sri_vector (MonoCompile *cfg, MonoMethod *cmethod, MonoMethodSignature *fsi
}
case SN_Ceiling:
case SN_Floor: {
-#ifdef TARGET_ARM64
if (!type_enum_is_float (arg0_type))
return NULL;
+#ifdef TARGET_ARM64
int ceil_or_floor = id == SN_Ceiling ? INTRINS_AARCH64_ADV_SIMD_FRINTP : INTRINS_AARCH64_ADV_SIMD_FRINTM;
return emit_simd_ins_for_sig (cfg, klass, OP_XOP_OVR_X_X, ceil_or_floor, arg0_type, fsig, args);
#elif TARGET_AMD64
@@ -1082,9 +1082,6 @@ emit_sri_vector (MonoCompile *cfg, MonoMethod *cmethod, MonoMethodSignature *fsi
if (size != 16) // Supported only on Vector128
return NULL;
- if (!type_enum_is_float (arg0_type))
- return NULL;
-
int ceil_or_floor = id == SN_Ceiling ? 10 : 9;
return emit_simd_ins_for_sig (cfg, klass, OP_SSE41_ROUNDP, ceil_or_floor, arg0_type, fsig, args);
#else