aboutsummaryrefslogtreecommitdiff
path: root/src/lib_jit.c
diff options
context:
space:
mode:
authorMike Pall <mike>2016-03-28 23:04:33 +0200
committerMike Pall <mike>2016-03-28 23:04:33 +0200
commit6801e7165c3a5031db3cfe0e52f50cebb918695f (patch)
tree6a26e078a7ecee447dc861860e2bacaf20f04d3c /src/lib_jit.c
parentc24c8e5312003da5ac0643645e321e84a672fea3 (diff)
downloadluajit-6801e7165c3a5031db3cfe0e52f50cebb918695f.tar.gz
luajit-6801e7165c3a5031db3cfe0e52f50cebb918695f.tar.bz2
luajit-6801e7165c3a5031db3cfe0e52f50cebb918695f.zip
x86: Detect BMI2 instruction support.
Diffstat (limited to 'src/lib_jit.c')
-rw-r--r--src/lib_jit.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/lib_jit.c b/src/lib_jit.c
index 402ca35c..c6330c49 100644
--- a/src/lib_jit.c
+++ b/src/lib_jit.c
@@ -668,6 +668,11 @@ static uint32_t jit_cpudetect(lua_State *L)
668 if (fam >= 0x00000f00) /* K8, K10. */ 668 if (fam >= 0x00000f00) /* K8, K10. */
669 flags |= JIT_F_PREFER_IMUL; 669 flags |= JIT_F_PREFER_IMUL;
670 } 670 }
671 if (vendor[0] >= 7) {
672 uint32_t xfeatures[4];
673 lj_vm_cpuid(7, xfeatures);
674 flags |= ((xfeatures[1] >> 8)&1) * JIT_F_BMI2;
675 }
671#endif 676#endif
672 } 677 }
673 /* Check for required instruction set support on x86 (unnecessary on x64). */ 678 /* Check for required instruction set support on x86 (unnecessary on x64). */