Use the isb instruction instead of yield for spin locks on arm

isb introduces a small delay which is closer to the x86 pause instruction.
diff --git a/configure.ac b/configure.ac
index 49a12ac..3303bad 100644
--- a/configure.ac
+++ b/configure.ac
@@ -425,14 +425,15 @@
 	;;
   aarch64|arm*)
 	HAVE_CPU_SPINWAIT=1
-    AC_CACHE_VAL([je_cv_yield],
-      [JE_COMPILABLE([yield instruction], [],
-                    [[__asm__ volatile("yield"); return 0;]],
-                    [je_cv_yield])])
-	if test "x${je_cv_yield}" = "xyes" ; then
-	CPU_SPINWAIT='__asm__ volatile("yield")'
+	dnl isb is a better equivalent to the pause instruction on x86.
+	AC_CACHE_VAL([je_cv_isb],
+	  [JE_COMPILABLE([isb instruction], [],
+			[[__asm__ volatile("isb"); return 0;]],
+			[je_cv_isb])])
+	if test "x${je_cv_isb}" = "xyes" ; then
+	    CPU_SPINWAIT='__asm__ volatile("isb")'
 	fi
-    ;;
+	;;
   *)
 	HAVE_CPU_SPINWAIT=0
 	;;