Skip to content

Commit 3150656

Browse files
authored
x86: avoid SIGILL in test25 for older CPUs (#343)
mfence requires SSE2, so not available before pentium4, athlon64 or via c7.
1 parent 45f910b commit 3150656

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

sljit_src/sljitNativeX86_common.c

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1067,7 +1067,14 @@ SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_has_cpu_feature(sljit_s32 feature_type)
10671067
case SLJIT_HAS_COPY_F32:
10681068
case SLJIT_HAS_COPY_F64:
10691069
case SLJIT_HAS_ATOMIC:
1070+
return 1;
1071+
10701072
case SLJIT_HAS_MEMORY_BARRIER:
1073+
#if (defined SLJIT_DETECT_SSE2 && SLJIT_DETECT_SSE2)
1074+
if (cpu_feature_list == 0)
1075+
get_cpu_features();
1076+
return (cpu_feature_list & CPU_FEATURE_SSE2) != 0;
1077+
#endif
10711078
return 1;
10721079

10731080
#if !(defined SLJIT_IS_FPU_AVAILABLE) || SLJIT_IS_FPU_AVAILABLE

0 commit comments

Comments
 (0)